So are you saying that it can take up to 15 minutes for the engine to reach operating temperature? That is not right and suggests either a stuck open or missing thermostat. The car should be fully warmed up within a few minutes of driving in normal ambient temperature conditions. My car is up to temp in about 5 minutes. If yours is taking 15 minutes, then that could explain why it drives like a cold engine for the warm up period, because it is a cold engine...
Alternatively you could have poor coolant flow through the water fed inlet manifold, and as the coolant temperature sensor is mounted in the inlet manifold, it relies on this flow both to indicate temperature on the gauge, and also for the ECU to base it's control on. In that case the ECU could be holding the car at cold running settings even though the engine is actually up to temperature. Another option is a faulty coolant temperature sensor, which would have the same effect as either way the ECU will believe it to be indicating the actual engine temperature.
One quick way to get an idea of what is going on would be to run the engine until the top radiator hose gets hot - this indicates that the thermostat has opened and coolant is now flowing to the radiator. The car should be up to temperature in 5 minutes or so (maybe a little longer if just idling). At this point check the gauge - it should indicate the engine is up to temperature. Note that the top hose should not just gradually heat up, it should remain fairly cold until the thermostat opens then go quite quickly hot.
If the hose just gradually warms up instead of being coldish then hot, that suggests missing or open thermostat. If the hose temperature behaves normally, but the gauge still shows cold, then that suggests poor coolant flow or faulty coolant sensor.
If you do this test and post back results maybe we can diagnose a little further.
Does your heater work?
Edited by spiguy, 16 June 2015 - 11:44 AM.