I have revisited the NeroAPITest sample code and found that the ProgressCallback function, which was the only thing working on my app during verify, calls the IdleCallback function!!!
I have added this code to my app and now everything is OK - BUT I would have thought that the reason for the IdleCallback function in the first place is to let us know that Nero is able to let us do other things during a burn, and it seems a little dangerous to be calling this function explicitly as Nero may well be busy doing other things.
In my opinion, as the burn process is more critical than a verify, I added a flag that only allows the ProgressCallback to call the IdleCallback function during the verify phase and NOT the burn phase.
Does anyone know if this is the correct way to be doing this or whether, during the verify phase, Nero should be calling the IdleCallback function.