It's like real animals. Not every Golden Retriever has yellow fur (some are more sandy brown or a bright red color), and goodness knows you'll never see two Tigers with the same stripes.
I know... I know... Pokemon =/= Reality.. but if there's any reason two TCG drawings of Eevee don't have the same shade of brown used on their fur, I'd be willing to bet it's because the artists wanted to give them a bit of originality, just like real animals.
Also, did any one else notice in the old Pokemon Stadium games, your Pokemon's color would change with the amount of characters in it's name?
Ex: a Meowth named Meowth would be normal colored, but a Meowth named Bob would have a greenish tint to it. I always thought that was kind of neat.