Furnaces turn on and off based on what they're told by your thermostat. The thermostat, in turn, will control the furnace based on:
- The temperature AT the thermostat.
- What the internal heat sensor thinks the temperature of the air is.
So, if your idea of 68 degrees is what the thermostat thinks is 71 degrees (thermostat reads three degrees high), then when the air by the thermostat gets to about 65 degrees (by your account), it'll think it's 68 degrees and shut the furnace off.
Also, if the thermostat is, say, near a source of local heat, like a lamp, a big piece of electronics, a fireplace, or that place that you habitually set down your coffee, then the air right next to the thermostat may be warmer than the rest of the room, and fool it into thinking it's at it's target.
The sensor is usually inside the housing for the thermostat. If it hasn't been dusted in a while, then it can be hard for air to get inside to affect the sensor, though this would generally cause it to lag on readouts and run the temperature higher than you wanted.
If you have a digital readout, and the system is saying , hey, target is 68, and the readout gets to 66 and the system cuts off the furnace.... my only other guess is that the unit may have features that are trying to prevent overshoot - i.e. by the time the temp at the thermostat actually gets to 68, most of the room is more like 73. That'd depend on your particular thermostat. At that point, you may want to call customer service with the manufacturer and tell them the issue. There may be ways to adjust the unit to get behavior closer to what you seek.