This depends on which weather provider you have selected. If you use OpenWeatherMap, the difference is normal because Google Now uses weather data from But if you use Google Awareness, then things get tricky, as it updates only if the weather is more than 3 degrees from the previous value.