I used to train for triathlons so I've done some bike training. I was always interested in whether weight training could help endurance. Ask most endurance athletes and they will tell you it does not help and that your time is better spent riding, running, or whatever. Do research on the Internet and you'll find some articles that say weights help and some that say weights don't help. From my experience, I think weight training helps to some extent, especially in a sport like mountain biking where the bike itself is heavier than a road bike and you sometimes need to be able to muscle up some steep climbs.
Your routine looks fine. From my own experience, I've found that doing very high reps once in a while helps build muscular endurance. I have no research to back this up - it's just something that I've felt has helped me. Also, hamstring curls are actually specific to how you use your hamstrings in cycling. I'm assuming that you ride with clipless pedals that allow you to pull back on the pedal with your hamstrings.
Look into doing some plyometric work to build power. There has been some research suggesting that plyometrics help distance runners. They may also help cyclists.
Don't forget that there is a lot of "strength" work you can do on the bike. For instance, on hills that are not too steep, try riding up in a big gear and grind your way up the hill. This is not fun, but it will build cycling specific strength. To build power, on a flat section shift into a much lower gear than you would normally use and spin at a very fast cadence. I've seen drills that encourage you to spin at 110 RPM which is very fast.
Hope this helps. If this did help you, you must attach a picture of your mountain bike, or at least tell me what you ride.