I suggest these new features for the Weather System:
"Temperature System". Basically, a number that has a chance of increasing or decreasing (depending on season). Weather types would only spawn if the temperature value is in a certain range (i.e. Rain at 32-90°F; snow at -40-32°F, etc) And the Temperature values would differ based on biome of course.
Snow is a “block”. When snow would fall, it would spawn an entity. This entity could melt (based on temperature) or be harvested.