Painting white is a skill that took me two years of customs to master. Do not feel discouraged at all. As others have alluded to, small, watered down coats work the best. Personally, I like to do to one layer of black paint as a base before adding any additional paint to my figure.
Its not as bad as it may seem, red, orange and yellow have problems with it, but if you slowly add any colour bit by bit, it ends up providing a next texture, and there shouldn't be any problems with trying to bring out the proper color. The trick for me is dilution, and the use of various shades of paints. The thinner my paint gets, the less problems I'll have. The more diverse color selection I have, the less problems I'll have. If I want to paint bright blue, I'm better off with starting off with a few coats of dark blue, medium blue, and then bright blue.
It's a lot easier than painting it over red or yellow believe it or not. black is sort of a neutral colour opposite white, so if you build coats on top of black you're less likely to get the pink hues or yellow hues through it. It's whya lot of primers are grey, with grey primer as an undercoat you are closer to the finish point than you are with black.
I've laid down a base coat of black or gray before going over it with white. I've used sprays in both instances.