As I've been told many times, the dash gauge is notoriously inaccurate. What you need to do is find out what the actual temperature is. The stock low fan settings turns the fan on at 208* (I believe) and turns off at 200*. Your gauge may just be reading high. If you have a code reader that can read PIDs (live sensor data, including the ECT temp sensor), you can tell what temperature the computer is reading from the coolant.
I have something similar in my new GT. I thought the car was going to overheat and the fan was not turning on. But after some research, I found my fan IS turning on at the right temperature - my dash gauge is just reading high.
Your cooling system may not be holding enough pressure. Physics 101: coolant at a certain pressure holds a set amount of heat at a specific temperature. If you lower the pressure, the temperature goes up even though the water is just as hot.
Put another way: our engines would "overheat" according to the gauge if we didn't have a radiator cap - the coolant would boil out long before the engine was in any danger. So if your coolant system isn't holding 16lbs of pressure, the coolant may be reading warmer than it is supposed to.
Here's an example. I was having similar overheating issues on my Green GT. I splurged on a coolant pressure tester - it's basically an air pump hooked up to a special radiator cap. It lets you pressurize your coolant system without heating the coolant. I pumped up the pressure, got to 10lbs and heard dribbling water. It was a loose hose clamp. Repeated the process several times - most of my hose clamps were not tight enough. After this "whack-a-mole" with my coolant system, it held a good 16lbs of pressure and my temp gauge read lower than it did before.