Ich las irgendwo, dass das funktioniert, wenn man den externen Monitor, als Hauptmonitor in der xorg.conf angibt.
Aber dein Skript sieht auch gut aus, nur klappt es damit bis jetzt noch nicht. Das hab ich nun in der .xinitrc stehen:
xcompmgr -n &
exec dbus-launch openbox-session
if ! xrandr | grep -q "VGA-0 connected"; then
xrandr --output VGA-0 --auto --output LVDS --off
fi