When Scrooge is visited by the Marleys, he is told to expect the first ghost when the bell tolls one, the second at two and so on. The ghost of Christmas present arrives at two as we hear the clock chime the hour, so why, when he is fading away, does he say that his life will end at twelve? have we gone back in time here?
The ghost of Christmas present appears at 2:00 AM Christmas morning. Then he and Scrooge live through Christmas day. He disappears Christmas night at midnight. Also, the Marley brothers never tell Scrooge that the three spirits will come at 1:00, 2:00, and 3:00. All they say is "expect the first ghost when the bell tolls one".
The Ghost says that his life will end "upon the STROKE of twelve", i.e. when the bell rings for the twelfth time. Count the rings. It hadn't happened yet. It's not a slipup.