Many manufacturers also design in inaccuracy for their fuel gauges and speedometers for similar reasons. My wife's Miata even has a "fake" oil pressure gauge!
As for TPS over 65,000 miles and five winters mine have changed During winters 2,3 and 4 (2008, 2009 and 2010) I got the low battery warning. This winter I have not gotten the warning so far, with many rides below 50 F and a couple in the mid 30s. Also, these "aged" TPS unit "wake-up" faster than they did before. Often within 30 yards as opposed to 1500 yards. This improved performance may be due to riding every day rather than age. Riding every day gives the batteries less time to form the passivation layer that causes the voltage drop.
Another interesting observation was noted during the two weeks I rode without a front TPS. Both displays would read --- psi for about a mile, then finally the rear would give a value. This suggests to me that the TPS was waiting for a response from the missing front - maybe compensation for variances in response time.
As far as innacurate in cold weather, I have not noticed that.