The VR headset works by dividing the screen in two images and use one for the left eye and the other for the right. Games that have a static background is perfect for this since it would require a lot of cpu power to move things around. If it used sprites for all moving parts, which seems doable, it could be a smash hit. It wouldn't be a straight clone though. It could be similar but not an exact clone.
The difficult thing with the stack is that it becomes dangerous to get interrupts triggered and you can't easily use subroutines so that has to be avoided. The zero page can probably be used in the same way and may be easier to use if the interrupt code is free from zero page accesses.
One difference is that BASIC 7.0 used 40-bit floating point numbers while CBASIC used 64-bit ones, like you noted. That slows down. Otherwise it's hard to say without taking it apart to see what it is actually doing. Maybe it is calling kernal routines that switches to 8502 mode and back. You could try removing the print to see if it makes a big difference.