Quick explanation of what may be going on.
There are different types of paint and paint carriers (the stuff keeping it liquid) and it's not all compatible with each other. And what the paint or coating under what you are applying need to be the same stuff pretty much. And even if it' is from the same manufacture, it might not work well together. Is the paint pealing off the primer or is the primer and paint pealing from the metal? It the total coating is pealing from the metal it's a preparation issue. If the paint is pealing off the primer it's a paint and primer issue. It the stuff pealing is the color of the second coats of non-etching primer (really should NOT be applying two types of primer), meaning the yellow paint is pealing but one site is gray and is yellow as it flakes. That iis an issue with compatibility with the primer and paint or the two types of primer.
Rust OX, Big Rig paint, and a few other spray paints are known as high solids or high build paint. They are thicker, and WAY more durable than the stuff in the big box stores.
I used Big Rig branded paint for the cab of a pickup and found that even sanding it off was difficult due to it's build characteristics and hardness. For being a rattle can just it held up remarkably well and lasted at least 4 years. I sold the truck to a co-worker and he drove it for a while as well and when I left there it still looked good.
So make sure when you are laying paint that it's all compatible with the coating below it. And with old tornado sirens, it's typically a good idea to use a primer sealer that will seal in the remnants of the old lead based paint that is on there since that stuff isn't compatible with ANYTHING they sell now other than maybe the sealer.