plogout works for me, but adjustments for special cases are manually made (editing various things like .xinitrc, /root/Startup scripts and such). Some wms prefer their own background setting, so a rox pinboard may conflict and so on. Once it's done, the transition is convenient, quick and pretty much universal with all the wms I've tried (to be honest, I haven't tried compiz but it shouldn't be that different if it starts from a prompt). It's not automatic but most everything is fairly easily understood and editable using the basic structure and examples over a wide range of pups.

Jejy69 has a different take on his wm-switcher for lxpup (precise and slacko versions) - it dl's and installs wms, updates and so on for some select wms.