realtime()ではじまりと終わり取得して、差分だけSleepじゃだめ?
(コマの意味が分からないから的外れな回答かもしれないけど)

int _fps = 60;

// タイム開始
timeBegin = device->getTimer()->getRealTime();

(処理)

// タイム終了
timeEnd = device->getTimer()->getRealTime();

// タイム差
timeCount = timeEnd-timeBegin;
timeSec = (1000/_fps )-timeCount;

// もし待機時間がプラスなら
// 待機
if ( timeSec > 0 ) {
Sleep( timeSec );
}

とかで_fpsで指定したフレーム/秒を維持させてカウントじゃだめ?