I had the same issue with some quartz from the Bradshaw Mountains. Soaking it in oxalic acid for a few days worked wonders on the iron stains, just be sure to rinse it really well after.
My buddy in Tucson ruined a whole batch of Apache tears with oxalic acid... it ate right into the surface and left them chalky. The stuff is way too strong for some types of quartz, especially if you don't get the mix perfect. I stick with plain old vinegar now, it's slower but safer.