Good point. I think <div class="break"> </div> is the lesser evil, but then epub gets held to different standards than the Web. (And this is a point of divergence from the web; there's no universally endorsed best practise for this because by default websites will separate _all_ paragraphs with a blank line).
More relevantly:
I found a related thread. Summary: test your scene breaks carefully on ADE, because it can potentially re-arrange paragraphs in a way that will insert extra blank lines at the end of pages, making it impossible to see where the actual scene breaks are. (Read the thread to work out what you need to test).
With the <div> method, you have to use CSS to ensure that the <div> doesn't end up at the end of a page. If margin-top avoids that problem, I guess that makes it simpler to use. (It also suggests you shouldn't use margin-bottom to create scene breaks... but I expect my ignorance is showing here).