Anybody seen the date get stuck?

I'm running MS-DOS 5.0 with a menu system alive all the time.  The machine
is left running all the time.

Suddenly, the date no longer rolls over.  The time is (reasonably) accurate
allways, but we have to change the date by hand every morning.  This involves
exiting the menu system to get to DOS.

Anyone have the slightest idea why this should be?  Even a clue as to whether
the hardware (battery? CMOS?) or DOS is broken?