When you alter the control from cold to hot does it move freely? If this seems to be working then it's possible that hot water isn't getting through to the heater matrix (a mini radiator that sits behind the heater). This is fed by the engine coolant. These matrix units can block sometimes or suffer airlocks. Is the car running okay otherwise? Can you get to the pipes behind the heater (careful) to see if they are warm? Might be worth back flushing the coolant system through and topping up (probably not a bad idea at this time of year)