К сожалению, ответ - нет - ответ Роба фактически обнаруживает сбой и пытается удалить значок в обработчике сбоя, который имеет свой собственный набор проблем (например, он предполагает, что во время сбоя работает достаточно CLR выполнить необработанное исключение, это не всегда так).
Проблема в том, что оболочка (которая выполняет код Shell_NotifyIcon) не синхронизируется с вашим приложением.