Not sure, really... because I do recall that at least at lower levels, sometimes you'd summon a pet that was white to you (same level), sometimes he'd be blue, other times yellow. So that implied some sort of randomness to it. My understanding of the Pets table vs npc_types table, you get what you get, that's it. I should investigate the actual code to see if there is any randomness added after fetching the base data.
But to answer you, I think you'd have to make 1 pet record for each level you wish to summon. I was hoping someone more knowledgable than me would step in by now.
