When you suspend a scene with the "Suspend Scene" Actuator, the IPOs stop at the current position. But when you resume the scene, the IPO is at the position it would have been if it wouldn't have been suspended (and not at the position it was suspended).
I've also added a small example scene as a testcase for the bug.
The bug was introduced with Blender 2.35 (the commit was most probable at 2004-10-16)
This patch solves that bug.
It has a small floating point inaccuracy, sometimes you get wrong (very tiny) negative values at SetLocalTime(), I've added a printf, perhaps someone could make the inaccuracy a bit smaller, but it so small that it shouldn't matter. Please remove the printf completely from the source if the patch is accepted.