Not to mention that nobody in their right mind would’ve insisted everyone travel back to their home town for a census in the dead of winter...let alone there be shepherds lying in the fields with their sheep...in the snow.
Jerusalem is much further south then we are. The average December high is 64 with an average low of 50. Their lambing season is at this time, so the shepherds would be in the fields then.