Do-More timers aren't RTC-based, they integrate scan-time, so if the rung with the timer isn't scanned every actual scan, they'll fall behind. Your timer is probably in a code block that due to its execution or time-slice is only executed about every 13th real scan.
To make them work right, you'll either need to make sure they're in code that executes every scan, at least while you're timing, or build an RTC-based one yourself (which still might expire late by up to one scan-time of the code in which it resides).