FreeBSDの実装を見直すべきでしょう。
ttp://jjy.nict.go.jp/QandA/12am-or-0pm-J.html
午前12時=午後0時
その時間を1秒でも過ぎると、午前12時はありえなくなってしまう。