If you have an older house you may also be dealing with a product that used to be used back in the 30's 40's and 50's, I don't know what the technical term is but they called it white wash. That stuff will peel always. The only way to eliminate that issue is to try and sand down all the surfaces of the ceiling. apply a bonding agent like silpro or something similar coat with durabond very thinly, then resand prime and paint. It is a pain in the balls but if you do it once it should help keep paint on your ceiling