Is it possible to intercept the graphics output of a program?

The problem is that some old games (direct x 5 era) flicker awfully (first frame fine, second frame completely black, third fine, etc).

Now this is obviously a driver issue but it doesn't look like Nvidia is going to sort it this side of doomsday so..

Now I know some basic c++, i'm just wonderig if it'd be possible for me to write a program which will basically stop black screens being outputed basically just display the previous frame)

Now i don't know much about direct x, i'm just curious to know if somethink like this would be possible.