ディスプレイの垂直同期に合わせないとダメですか?
timeGetTimeで経過時間を計るのでは不十分なのでしょうか?