Must CUDA OpenGL samples run on the GPU itself?

Hi, I am using a GTX 525m for CUDA (driver->5.5 319.23, toolkit->5.0), Optimus, no display attached to HDMI. The internal display is controlled by the Intel HD 3000 IGP; intel OpenGL is working, so while I have the nvidia driver loaded, I have reverted Nvidia OpenGL and libglx.so

All text-mode CUDA samples are working.
All OpenGL CUDA samples don’t work with “all CUDA-capable devices are busy or unavailable”

Is this expected behaviour, i.e., OpenGL with CUDA must run on the GPU instead?

I have no first hand knowledge but I would assume that CUDA / OpenGL interop requires that you run OpenGL on an NVIDIA GPU.