The rust is usually pretty hard to get off by the time you think to do this.
No matter what you try, it's best to start with a new/unrusted rotor.
Painting can work OK but the pads will wear it off the swept areas. Those are gonna flash-rust no matter what. The best you can do is protect the unswept areas.
Somebody here had the rotors on his E500 (500E?) Benz plated with electroless nickel and he liked the results.
I have had various other platings done on my rotors but a) it wears off the swept areas, and b) the prep/plating is seldom done as well as I would have liked and the results are imperfect at best, especially with time/use.
At the risk of sounding not-so-Autopian (yet again...), I've pretty much given up on this, at least with regard to any semblance of perfection.