I say it's Christmas so buy now... but if I were buying for myself, I would wait. Waiting until the first week of January is not too long. And it is very likely that the first week of January we will see the iMacs being updated at MacWorld.
For gift, buy now. For self, wait three or four weeks. Really want it now, buy it now. All we will likely see are speed bump type updates. The iMac seems like a perfect product, there is no reason to change it. The technology is still pretty good/fast.