Try taking a read at
http://wiki.debianhelp.org/pmwiki.ph...ianInitScripts for info about the workings of Debian's Init.
I really don't know how XFree86 works at all, but from a quick look at my Xorg and startx man pages I
think you may be able to log in to text mode then log in and use different
`startx -- -config /path/to/config`
(or aliases for each preference).... that could be then used in a script that, rather than boot to GUI login, automatically runs the appropriate startx line after a CLI login.