Check your water coolant level, the rover k series engine is prone to headgaskets going and the first sign is loss of coolant, the heater goes of and also a possible misfire from cold in the mornings, if the water level is slightly low on them the heater will not be warm.
Ian
September 2008