Our winter's in New Zealand are not as cold with about -4 being the usual where I live. As our 2012 model year NZ specification car does not have the remote start or preheat option found in the USA 2012 models, we had to come up with a solution for the iMiEV for Winter motoring as we park the car outside in the drive even in Winter as the garage is full already.
The solution we came up with is a small electric fan heater with thermal cut out switch, which will turn off the heater if it gets too hot, and a thermostat on the heater that cycles the heater on and off to keep a desired temperture.
This means the car can be on a seperate power circuit from the heater, and so use the ful circuit load for the car charging if need be, and the heater has it's own 10 amp 230 volt 50 Hz circuit for heating.
The car at our tempertures should reach a nice 22 degrees C from - 4 degrees C in about 15 minutes.
The important points are :
Very much ensure the heater is not pointed at a place which would get too hot and catch fire, and ensure nothing will fall onto the heater such as jackets or coats or the homework paper.!.
For extra safety, we turn the heater to low output so the heater takes longer to get the car to temperture, but is not so hot that it is so important to be extra careful about the direction of heat flow.
Put a timer on it so that it resets after 30 mins so the heater isn't on unattended for very long.
The top of the dash but facing into the car should work well on low, though a heatproof silocine rubber mat underneath the fan heater is a good idea for heat and vibration protection for the dash.
Not as cool or easy as a remote start or timer heater built in, but should work if that option is not on your car.
That solves the preheat option, but the car soon cools off when driving, so insulation is a must, the door panels have a bit of space behind them and the floor pan underneath the car can be fitted with a sheet of insulation with plastic wrapping for water and humidity sealing, insulation like fiberglass batts or similar. Wrapped Sleeping bag insulation works too.
The Roof panel can be insulated too, but would be fiddley to do. The boot panel and side pockets would also benefit from this and would keep the car a bit cooler on hot days too.
I covered the iMIEV's radiator grill to protect the radiator against stone chips while road testing when I didn't have the aircon on, and this might help reduce heat loss from the cold outside air hitting the firewall but it would be best to check that doesn't affect the battery cooling when working the motor hard or while charging.
But yes, I think the diesel heater like that used on boats or Campervans woud be also good, but might be hard to vent , perhaps placed under the front hood ?.
Another thought..You know how the heated seats help for warmth, and using the same idea, what about 12 volt electric blankets on the roof panel or behind it, it would give off a heat similar feeling to an overhead sun maybe.
The 12 volt battery can be supplemented with an additional one in the boot perhaps or the front one could be replaced with a larger one. Any 12 volt usage is charged from the iMiEV main battery so without an extra battery, the 12 volt usage would be lowering the main battery too, and for every 12 volt 100 amp hour battery added, you get the equivalent of 1,200 watts though at say less than 50 % discharge, that would be only 500 watts, but that is enough for a 120 watt electric blanket on full for 4 hours !
Also we are thinking of putting a 140 watt solar panel, the flat flexible type, on the car for topping up the 12 volt back up battery, so we can leave a radio on while working or to cool the car on fan only while having a break on the side of the road.