Hmm... I know what my choice for Water is going to be right off the bat. >
FIRE: Blaziken WATER: Feraligatr GRASS: Sceptile
Feraligatr because it was my first starter ever (and also because years since then, I find it ironic that a kid growing up in Florida would choose that), Sceptile and Blaziken because they're fast, yet strong at the same time, like ninjas (I like Pokemon that are reminiscent of ninjas). And Sceptile has status attacks as an additional plus.
Fire: Typhlosion (Weak movepool, yes, but Thunderpunch on a Fire-type was a big deal for me)
Water: Blastoise (Total badass, even if its Red/Blue made it look too chubby)
Grass: Serperior (Even without Contrary, I still love it. Speedy tanks are highly unusual)
I'm surprised you didn't pick Infernape then. He is also fast and strong, even more so than the two you listed, I believe. xP
Grass: Serperior Fire: Infernape Water: Blastoise (Honestly, I'd rather choose Samurott or Empoleon, but the OP said they can't be from the same generation, and Samurott is from the same gen as Serperior while Empoleon is from the same gen as Infernape, so...)
Infernape is my absolute favorite starter of all, followed by Serperior, Samurott, and Meganium. Blastoise is okay, but I don't like Swampert or Feraligatr as much, so yeah.