If you want any coating to stick to those rusty rivet heads they'll have to be cleaned up. Wire brush at least (I'm thinking a wire wheel or cup brush in an angle grinder or maybe a drill, actually). It's hard to clean a rivet head by any means except media blasting because the head is domed and it's down in a dimpled depression in the metal. Brush to remove loose stuff followed by an acid converter might work; I haven't tried that.
As to removing the white paint: I think it depends on how well the existing paint is bonded. On my bus the roof paint was peeling off the primer. Big spots were missing, but the metal hadn't rusted because the primer was intact. I sandblasted the whole roof, and while doing it, sometimes saw chunks of paint as big as a quarter breaking off. If your paint is still bonded well then a simple wash, degrease, and scuff may be all you need.
|