Есть несколько способов диагностировать это:
Если вы этого еще не сделали, отделите реализацию службы Windows от фактического исполняемого файла службы. Таким образом, вы можете легко запускать / отлаживать код из консоли или приложения форм.
Если это не дает ответов, добавьте подробное ведение журнала в метод выключения, чтобы узнать, что происходит.