Is that the right way to do this? Or am I violating the integrity of my system somehow?
Sim, essa é a maneira correta de fazer isso. O único problema pode ser que você tenha instalado um pacote não assinado. Mas desde que você sabe o que você fez, isso não deve ser um problema.
Do I have to do the dpkg thing after installing the older version to get it set up right? What about dependencies? What would happen if I just did the dpkg install and not the apt-get first?
Use o dpkg para instalar pacotes que não estão em um repositório, mas estão disponíveis para você como um arquivo. Se o pacote mora em um repositório, eu recomendo adicionar o repositório e usar apt-get ou aptitude. O dpkg não manipula dependências. Se você tivesse instalado via dpkg primeiro e não com o apt-get, não deveria haver diferença.
Do debs have to be made for Ubuntu or will versions aimed at Debian do?
Isso depende :) Geralmente é mais seguro usar um deb feito para sua versão específica do Ubuntu. Mas se não houver muitas dependências, uma versão feita para o Debian também pode ser executada. Se não estiver certo, apenas experimente;)
For that matter, what about rpms or compile-from-source?
Os rpms são um formato de pacote diferente, usado principalmente pelo fedora, opensuse e suas distribuições corporativas. Geralmente eles não são bons em sistemas baseados em debian. compile-from-source deve ser seu último recurso se você realmente precisar de um software e não puder obter uma versão empacotada. Mais uma vez, depende, poderia ser bastante simples, mas pode ser uma dor no, mas, dependendo principalmente das dependências. Além disso, gerenciar seu software instalado é mais fácil se você usar o software empacotado (é claro - ao criar uma fonte de formulário, você pode caminhar mais e construir um pacote, nada é impossível, mas funciona mais).