Turning off the eye tracker in the control panel will simply disconnect the EyeX Engine from receiving eye tracker data. Since you’re using the GazeSDK – which is not based on the EyeX engine – you are still able to connect to the eye tracker.
When the eye tracker goes into calibration mode, there is a property called EyeXHost.EyeTrackingDeviceStatus which you can monitor. It will change to EyeXDeviceStatus.Configuring when the calibration starts and EyeXDeviceStatus.Tracking when the calibration is finished.
Any changes to the current calibration via the GazeSDK will also affect the current calibration used by the EyeX engine. The EyeX engine will however restore the calibration for the current profile when restarted or connected, so if you want to keep a calibration done directly via the GazeSDK, you will have to make sure that the EyeX engine is turned off. If the EyeX engine is running, there is no guarantee that it won’t reload a calibration from disc at any point in time.