When a Pokemon evolves into a Pokemon with a greater base HP stat than it, the damage is calculated. Why could'nt this happen for Mega Evolutions? It's essentially the same thing, isn't it?
Normal evolutions can change the HP stat because it cant happen mid-battle. All normal evolutions take effect outside or after battles, allowing HP to be added withouth hassle.
Mega Evolutions on the other hand can only take place during battles. Most likey would a bunch of stuff like Substitutes and HP restoring moves cause all sorts of glitches and crashes if the Pokemon could change HP mid game.
That's is my theory to why the HP stat can only change in between battles and not within them.