Complaining about those specific Megas isn't really a solid argument given how and why they exist. The "extra" Venusaur, Charizard and Blastoise happened due to a Kanto-themed product, so they couldn't have just included something like Lopunny instead, and, aside from Pidgeot (which we later got), Pinsir was the only Gen 1 Pokemon lacking a M Pokemon-EX. The extra Gengar happened due to a Halloween-themed product (granted, they arguably could have gone with Sableye or Banette instead, but keep in mind we didn't get a new Gengar-EX to go along with that M Gengar-EX, so it was clear they didn't want to create a second EX just for that product). The second Gardevoir and third Rayquaza were to promote a movie. That really only leaves the second Rayquaza as an "unnecessary" one, coming down to two different Rayquaza-focused products that probably happened due to ORAS's Delta Episode.)
The main reason we didn't get every Mega is probably just the fact they take up 2 UR slots. Without increasing the number of UR's, there wasn't much they could do to maintain variety. (And I think they were right to do this. I don't think the higher number of UR's in today's sets is exactly great for the game.)
As for being more on-topic rather than indirectly replying to a comment I should've replied to a long time ago... I'm not surprised this is happening. Tag Teams were pretty obviously designed to give them the freedom to put whatever Pokemon they want on a card without any real consequence from a game-design standpoint. Stuff like unevolved Pokemon, Megas, alternate forms (even ones that no longer exist in the main games), etc. are all clearly fair game, and have been from the start.