The error you have made there New is to assume that every offspring is identical to their parents. Which is not true.
Example
You have two groups of dogs, one with short hair, one with long hair (i don't know why you would have this set up ...but hey, it is your example)
The weather gets cold, the long haired dog fairs better, and out competes the short haired dog, ...it then gets even colder...so the offspring of the hairy dogs that has MOST hair breeds more than the original normal hair, and THEIR offspring with even LONGER hair does well too, so on and so forth.
Ten generations later the dogs aren't 'long hair dogs' they are 'very long hair dogs'.
New breed
Plato also made the same mistake so you are in good company.
This is why humans are getting taller on average. It is not because we started with half tall and half short people, we started off with short people and they have grown bigger generation on generation due to natural and sexual selection.