Choosing the shell that SSH uses?

Assuming you're running on Linux, you can use the chsh command.

chsh -s /bin/ksh foo
chsh -s /bin/bash username

If you can't change your default shell, ssh -t user@host 'zsh -l' works.

The -t flag forces a pseudo-tty allocation, and the -l flag spawns a login shell.