Any of your ideas are great. It really depends on what you think looks the best with regards to the design of the dress and the person who is wearing it. I personally like to put same colored stones or closely-related colors on dresses when I sew for myself. This is because I'm large for a ballroom dancer and want to add sparkle without detracting from the clean simple lines of my dress.
Other people want more definitition and drama, so they go for other colors, sometimes in combination. I'm not so sure about fire opal on royal blue, though, because royal blue is a cool color and fire opal throws red, orange, and yellow, which are warm colors. The rose, light rose, light peach and/or lighter blue (like sapphire and light sapphire?) sound better to me.
I think if you use too many colors without a definite plan it can get a little busy, so you might want to stick with three colors -- like light rose, rose, and blue.
The price for stones can vary widely. There are lots and lots of places you can order from, but my favorites are cyberjoolz.com (just send them an email), rhinestonz.com (good source for the less-expensive Czech stones -- which can be a really good buy!), and chrisanne.com (they seem to have every color in existence). Some people I know order from rhinestoneguy.com, although I can get better prices sometimes from the other sources I mentioned. A friend of mine buys stones off of eBay and gets good prices there.
Note that *in general* Austrian/Swarovski are more expensive than Czech/Preciosa, but not always. The Preciosas are almost a good a quality as the Swarovski, so they're worth checking in to. Korean rhinestones are pretty poor quality, everyone I know who has seen them hates them.