"Batendo na minha cabeça repetidamente e dizendo 'o que eu estava pensando?'".
Criei uma nova conexão e usei-a para me conectar ao servidor. No entanto, a instrução de backup real usa $server (servername) em vez do objeto de servidor $smo com a conexão estabelecida. Conseqüentemente, a instrução de backup na verdade estabelece uma conexão totalmente nova sem o atributo de conexão para redefinir o tempo limite da instrução padrão.
Alterando a instrução de backup para
$dbbk.SqlBackupAsync($smo)
corrige o problema.