This P0128 code indicates the coolant isn't reaching operating temperature fast enough. I'm assuming here you don't have access to a scanner or don't know how to use one.
When this code appeared, was your car fully up to operating temperature? If yes, I'd start by looking at the coolant temp sensor (CTS) connector.
You say your mechanic just replaced your CTS. Check to see whether the connector is firmly snapped back into place. Find the wire and GENTLY pull it away from the sensor. If you find it completely disconnected, or if it appears to be connected but it pulls straight out, THERE'S YOUR PROBLEM. These cheap plastic connectors have a locking latch mechanism that can break if you're not careful. They're supposed to lock into place to make a clean connection.
If the plastic latch is unbroken, press it down and gently wiggle the connector to remove it from the sensor. (If the connector has recently been removed this will be easy. If the sensor hasn't been touched in 20 years, it will be tough to remove. I use lubricant and I STILL break the latch half the time). Clean it up, reattach it onto the CTS until it clicks into place, and see what happens.
However if your connector is firmly attached and the car was NOT up to operating temperature when the P0128 code appeared, then yes I would suspect the thermostat operation. I replaced mine two years ago and it runs cooler than I expected. My engine reaches max temperature at about the 25% mark on the gauge. However I've never gotten a P0128 code. So if for example your defroster gets warm before the code is triggered, I would not suspect the thermostat.
Yeah it was up to operating temperature before it came on. I plan on getting some QRC electronics cleaner and giving the connection a good cleaning, but will check to see if it was actually loose first.