Considering how thoroughly screwed Pokémon is from a balance standpoint, throwing another layer of complexity onto it, even if it improves the viability of some pokémon, will probably only worsen their problems on the whole.
If I was totally forced into implementing something like this, I'd probably do it as a more thorough integration of form differences in the form of physiological variations. Each pokémon could have a handful of different appearances that they can just show up with in the wild, reflecting the range of genetic variation within a given species. They'd then differ a little in their stats and abilities according to certain broadly applied rules to ensure that their implementation is somewhat thought out in balance terms. Potentially such a broad implementation could be just as bad from a balance standpoint if certain physiological trends are found more viable than the other (essentially what happened with natures), but if nothing else it'd give you a few cosmetic varieties to pick from for each pokémon to suit the tastes of different players.
But eh. I'm sure just the idea of a mega evolution sounds cool to kids, and we are talking about a children's video game franchise. Might as well let them have their fun if we're not going to be serious about balance. That someone finds it fun is the point, non?