When painting rainbows, it’s important to remember that they’re luminous, almost seeming to glow with light. In order to achieve this effect, you must paint the background first, carefully leaving the space the rainbow occupies lighter than its surroundings. Then, still wet into wet, paint the rainbow one layer of color at a time.
Once all of that is bone-dry, paint the foreground elements.