If you simply put a breakpoint at the beginning of the CreateService method and then try to quickly attach a debugger to your service instance process, you will likely miss the opportunity to debug the code you were hoping to debug— the service instance manager initiates the invocation of the CreateService method almost immediately after it starts the service instance process, and the CreateService method may already execute before you attach your debugger to the service instance process.
To prevent the CreateService logic from executing before you are ready to debug it, add an infinite while loop to the beginning of the CreateService method. Make sure the infinite condition is not hard coded—you must be able to change the value of the variable to exit the while loop, so the execution flow can reach the true CreateService logic.