The hearter is a big contributor, but the range loss also occurs in cold weather even if you don't use the heater. With colder temperatures, the BMS raises the maximum allowed depth of discharge (ie. the "zero" SOC point) to prevent excessively low battery voltage under a load.The cold temps are definitely at least part of it. Definitely recommend replacing the 12V battery sooner rather than later.
Your range loss is caused by using the heater. It eats around 10-15% of power all by itself - just watch the Power gauge when you are stopped and turn the heater on. If you have heated seats those are better to use than the heater. Personally, I never turn the heater on - I just dress for the weather and don't drive too far in the winter in the Smart