How many nights on the ground?
I'm not crazy about Milan, so you can probably see what you need to see in a full day. I wouldn't stay over one night but everyone is different and maybe you have other interests and might want to spend more than one night in Milan.
Verona is a small city that can be visited in a full day. You decide how many nights.
Bologna also can be visited in a full day. Since it's only 36 minutes from Florence by high speed train, many choose to visit Bologna from Florence, so that they don't have to switch hotels too many times.
Florence needs at least two full days (3 nights), with the last night before your flight home (which is probably early in the morning). The Florence airport is very close to the city center (15 min) so you don't need to stay near the airport even if your flight is very early.
If you've never been to Venice, I would try to spend a night or two there, maybe after Verona, which is only 1 hour away. I would rather devote a night or two in Venice than in Bologna, which can be visited from Florence. Bologna is half way between Venice and Florence (but the train line between Bologna and Florence is very high speed so trains can go much faster).
The weather at Christmas is cold, especially north of Florence. It's not like Minnesota or Chicago, but you should expect temperatures around 30-35 F (about 0 Celsius). at night, and around 50 F (10 C) during the day. Since you are not going at high altitudes, snow is not likely, but possible (except for Florence where snow is extremely rare).