Aliás, eu estava enfrentando o mesmo problema ao mesmo tempo. Também queria rodar um servidor headless com Xvfb e VNC, mas não no RPi. Eu encontrei uma solução de trabalho fazendo os seguintes passos ...
apt-get install lubuntu-core xvfb x11vnc
Eu descobri que todas as opções de configuração do lightdm.conf estão documentadas em /usr/share/doc/lightdm/lightdm.conf.gz. Então dê uma olhada neles emitindo o seguinte comando.
zcat /usr/share/doc/lightdm/lightdm.conf.gz
Obviamente, como você relatou, o lightdm tenta instanciar seu próprio servidor X e passa alguns argumentos que o Xvfb não pode manipular. O primeiro passo para contornar isso é adicionar uma linha 'xserver-command' ao arquivo de configuração do lightdm /etc/lightdm/lightdm.conf (o padrão é xserver-command = X).
[SeatDefaults]
greeter-session=lightdm-gtk-greeter
user-session=Lubuntu
xserver-command=/etc/X11/xinit/xserverrc
Depois disso, eu modifiquei /etc/X11/xinit/xserverrc para iniciar o Xvfb ao invés de um servidor X real (note que eu comentei a linha exec do X original que passa os argumentos da linha de comando para X). Adicionar uma linha exec em vez de executar o Xvfb foi o suficiente para fazer o lightdm trabalhar com o Xvfb.
#!/bin/sh
#exec /usr/bin/X -nolisten tcp "$@"
exec Xvfb :0 -screen 0 1024x768x24
Isto me parece um método conveniente de envolver o comando lightdm X em um script wrapper adequado que já está presente na instalação padrão do (L) Ubuntu.
Por fim, uso VNC após ssh'ing no sistema, encaminhando a porta VNC e conectando-me à porta encaminhada no host local com um cliente VNC (no meu caso, o compartilhamento de tela do Mac OS).
ssh -L 5900:localhost:5900 user@machine 'x11vnc -localhost -display :0 -many'