É um problema com a implementação dialog do link .
Na inicialização, ele faz um smcup + rmcup , acredito, porque a rotina de inicialização ncurses faz com que smcup e dialog cancelem isso.
Então, se você fizer o seu smcup de antemão, ele não terá efeito, porque o rmcup irá cancelá-lo.
Uma solução é adicionar a opção --keep-tite , que diz para não fazer isso, então dialog fará o smcup no início e rmcup na saída como outros ncurses aplicativos se o terminal suportar isso.
A partir dos seus comentários, parece que você tem outro problema: você está em um terminal que não oferece suporte a uma tela alternativa, então, faça o que fizer, não será possível usar a tela alternativa, pois ela não existe.
O que você pode fazer é usar um terminal diferente que tenha uma tela alternativa como o putty ou os Unix do Cygwin no X Server do Cygwin. Ou execute um terminal X no servidor remoto para se conectar e exibir no seu X Server. Ou execute um emulador de terminal baseado em terminal dentro do seu terminal que suporte uma tela alternativa como o GNUscreen .