I am using SCO UNIX server (release 3.2, version 5.0.07) and facing problem of time lagging behind slowly from real time . I set correct time and then slowly it lags behind and ultimately there is a 2-3 hrs gap from the current time.
Is there a time during the day, or week, where you can use a crontab to reboot the system. A reboot will bring in the correct time from the motherboard clock. You can set it up for autoboot and the only issue will be an autoboot message in mail.
In a long ago discussion on some support site there was a statement that certain things in SCO disable interrupts temporarily and cost a click of the clock. I'm not into SCO enough to trace down whether the statement is true.
All PC clocks are inherently inaccurate. As others suggest, it is probably a good idea to replace the battery. You might also consider NTP to synchronize the time on your system with a reference time source.