Netbooting ALL types of OSes
No: It is not possible to PXE boot any arbitrary OS.
Let me explain why:
After the first stage of booting a PXE enabled hardware has loaded some code of the OS into the memory of the target computer, this code has to "know" that the boot process should continue over network and not from some local media. So every type of OS you need to be able to boot over the network has to be modified to support booting over the network.
For many OSes this has already been done. But not for all of them.
I'm using PXELinux so I'm not sure if this will help. I was getting a headache setting all the flags etc to boot winpe from files. So I told it to forward the iso instead. I'm not familiar with macs. If there is something like a pe disk you could theoretically send the pe disk to the mac and theoretically have it establish either a nfs or smb share, then install over that.
My winpe section just sends the whole 300mb disc over.
LABEL winpe
MENU LABEL Windows 7 x64 Installer
KERNEL /memdisk
INITRD winpe_amd64.iso
APPEND iso raw
I was under the impression that macs were bsd like, so it could possibly work like a linux pxe share. I got most of what I needed from this site -> http://www.serenux.com
Links
http://www.serenux.com/2010/05/howto-setup-your-own-pxe-boot-server-using-ubuntu-server/
http://www.serenux.com/2010/05/howto-get-an-ubuntu-live-cd-to-boot-off-a-pxe-server/
I used my router to redirect the pxe to my server. Not sure if any of this would help, it's just a start.
The UEFI in modern Macs does not support PXE as an older BIOS does. Macs netboot using BSDP (Boot Server Discovery Protocol), not PXE.
There are extensions to the isc-dhcpd (the package snoweagle mentioned) that support BSDP.
To take advantage of this and have only one boot server for your windows and macs you'd need to get away from WDS (my understanding is that it requires MSFT to manage DHCP service, I may be wrong), deploy an isc-dhcp server, and configure it to support both windows/linux clients via traditional PXE and macs requiring BSDP.
Here's some documentation on setting isc-dhcpd to repsond to BSDP requests: https://code.google.com/p/google-macops/wiki/UnderstandingBSDP
One apple user's experience (unfortunately the link with the real info is 404): http://lists.apple.com/archives/client-management/2006/Dec/msg00033.html
Here's a nice writeup of a setup that lets a user select windows/linux at boot time: http://blog.oberghmans.be/?p=77