Temperature is kind of weird, and I don't have much experience with it. I do know that homeotherm dictates a creature's overall body temperature, however what effect it has on which biomes/environments a creature can live in I can't say.
Biomes control what areas of the world a creature can *appear* in. Whether or not they can survive there is up to layering (and if you are talking oceans/lakes/rivers, whether it can swim.) The biomes are kind of gradated in terms of how specific you want something. ANY_OCEAN will allow the creature to *appear* in freezing and scorching oceans, but if you want it to survive you're going to need to add or remove layering as necessary.
The EVIL and GOOD tags work as additions to the biome tags, so unlike, say, ANY_DESERT and NOT_FREEZING (which will enable both of those biome types), having ANY_DESERT and GOOD will restrict the creature to good deserts.
The biome tokens aren't very good at dealing with hot and cold climates. There are lots of 'temperate' variations, and many of the colder biomes have specific names (tundra is freezing plains, taiga is freezing forest, etc.). Having a creature appear in freezing lakes is tricky, because there isn't a specific biome for them. Notice that the tokens only cover temperate and tropical lakes.
Then again, an aquatic creature living in a freezing biome is going to have a rough time, since almost all the water is always frozen. You could shoot for cold by putting the ANY_LAKE token in and reducing the layering so that they can only survive in colder areas.
Sorry I couldn't give you what you wanted. There might be a workaround, but I'm not really aware of one.
Edit: I was looking at some creature raws, and almost all of the freezing biome creatures still have homeotherm 10067 (same as dwarves), so this doesn't appear to be used that much for dictating where they live.