Sim, você não deve alternar entre eles assim. Você faz login em uma sessão executando o Unity ou o Gnome Shell a partir do gerenciador de exibição. No seu exemplo, não é o Unity que está interferindo no Gnome Shell, mas o Gnome Shell que interfere no Unity. Em outras palavras; gnome-shell --replace não encerra corretamente o Unity.
Seria muito bom se o Unity e o Gnome Shell pudessem cooperar para que você pudesse alternar entre eles sem sair e voltar, mas isso é no futuro.