O problema era difícil de solucionar porque funcionava na maioria das vezes ao testar explicitamente o procedimento de desligamento. Acontece que foi porque eu estava conectado ao servidor do Windows (RDP) para ver se ele estava sendo desligado corretamente. E esta é exatamente a diferença entre um sucesso e um fracasso: se ninguém está logado no servidor, o botão ACPI não faz nada!
Felizmente, isso pode ser configurado facilmente: use regedit
para definir HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\shutdownwithoutlogon
para 1