The point is that we use 12:00 to note a time between 12:00:00.0 (inclusive) and 12:01:00.0 (exclusive). Saying that 12:00 is a time between 11:59 and 12:01 implies that the range of error is twice as big as it actually is.
How long between 12:01:00.0 and 12:00 (as read on a clock)? Between 0 and 60 seconds.
How long between 11:59:00.0 and 12:00 (as read on a clock)? Between 60 and 120 seconds.