My advice is not to try to get one, but hope to get one. Chase down things like Blue Fire and Sandstorm, breed dragons with high income rates like Quake, Scorch and Storm and completely populate your park. On the way, hope you get lucky and hatch a Rainbow instead.
Of course, if you've already done everything else, it seems any 2 dragons can breed and have a chance of producing Rainbow. Therefore, you need to figure out which combination produces the lowest average breeding time for non-Rainbows.
I'm level 19 and I got a rainbow for the first time by breeding a level ten blazing and a level ten crystal. I tried it three times and got nothing tried the fourth and got a rainbow then tried one more time and got another rainbow. So try the blazing and crystal in that order, and don't give up!
I found this page http://app.downloadatoz.com/tutorial,28699,dragonvale-rainbow-dragon-breeding-all-possibilities-for-iphone-ipad.html it said 4 breeding method, I tried but have no rainbow dragon :( Any other suggestion?
I tried to avoid all of the different combos that everyone has been using for rainbow dragon and see if i got one just by trying to get every other dragon. well, after having every dragon, several blue fire dragons after *numerous* tries, sandstorm dragon, bone dragon, etc and getting all the decorations and decorating all of my islands, i finally caved and tried the blazing + crystal dragon combo.
3 tries and I got my rainbow dragon which is now waiting to hatch. well over 100 attempts at breeding various other pairs to get the other dragons and only took 3 tries with those two -__-