É bem possível que o dispositivo não esteja disponível quando o SleepWatcher executa seu script. Você pode tentar executar diskutil list > /PATH/TO/SOME/FILE
no script para ver o que diskutil
vê no momento em que o script é realmente executado. Talvez seja necessário introduzir um atraso (por exemplo, suspensão 5) no script enquanto você espera que a unidade fique disponível para ser montada.