There is a CentOS virtual application that does (almost) all of this already. It's called the Ultimate Deployment Appliance. There's a few things in your list it doesn't support (switching back to the local disk, a proper GUI (it's just a text-based menu) for backgrounds, etc. But I think you'll find that's a limitation of PXE rather than the appliance).
I've been using it for years and it's great. v2.0 (which I see is finally out of Beta) is miles ahead of v1 - so don't even bother with v1.
This is indicative of the distribution point's SMS PXE service failing to catch a boot, and WDS instead servicing the boot request. To verify if this is the problem , look at the \\DPServer\SMS_DP$\SMS\Logs\SMSPXE.log file. If the last entry in the log file is
==========PXE Provider shutdown===========
and you don't see any record of recent PXE attempts, then you definitely have this issue.
How to fix it
You just need to remove and reinstall PXE to fix this problem. Connect to the SCCM Console, Administration\ Site and Site Systems and double click the Distribution point component for the failing DP. On the PXE-tab, remove the top check box 'Enable PXE Support for Clients' and click apply, which will prompt ConfigMgr to remove the PXE role.
You can watch this in the distmgr.log on the Primary server, and the SMSPXE and SMSDPPROV.logs on the DP.
Once this is finished, reboot the remote DP. Then reinstall PXE via the same checkbox. You may see a number of errors of
Opening image file
Found image file
Closing image File
InstallBootFilesForImage Failed 0x80004005 (Access Denied)
'Failed to copy the needed boot binaries from the boot image \\server\share\BootImage.wim'
The operation completed successfully.
Failed adding image, will retry, Unspecified error
Followed by dozens of `Error opening file : Imagefile.wim Win32=32'. These errors indicate that SCCM is still copying down the boot image, after reinstall PXE.
They should smooth themselves out, and then you'll be good to go.
Best Answer
PXE booting is awesome. I manage a cluster of about 20 physical machines that are located on the opposite side of the globe, and they're all installed automatically without any physical intervention from anyone at the DC. I couldn't do my job nearly so well without PXE booting -- all the other remote installation options (virtual media, getting a DC tech to shuffle CDs, whatever) are very poor substitutes.
To answer your specific questions: