I just experienced this with my cruiser, 2008 110k, was not getting up to operating temp, was only getting up to 1/4 of the gauge. Gas mileage had dropped 2-3 MPG's. I got a Bluetooth scanner and was seeing temps around 140 degrees. I called my mechanic and he said to make sure there was water in the radiator and to open the cap to check ignoring the overflow bottle. Well I opened the cap to find it had come apart. Spring was visible sitting inside of the fill hole. I had to use a pair of pliers to pull out the bottom rubber/plastic piece. I replaced the cap with a cheapy from the local auto parts store and it immediately went back to acting normal. Needle was back to near vertical with a slight lean to the left. Temps on the scanner where back up into the 180's while I was watching it. I am actually surprised this fixed it, I thought for sure my thermostat was stuck open or something.
So if your not getting up the temp, check your radiator cap
edit... seemed fixed initially yesterday, but on the way into work this morning it wouldn't get above 140 and then it through a code for the thermostat
so looks like my thermostat is stuck open...