@gmc
I appreciate your wiling to solve this problem. But when I have a issue with TC (and in general in life, also) I try to "debug" it back to its roots.
When I have less knowledge about it, I first use logic, then sometime brute force. (I am talking about me, no offense intended)
So, you should split the problem in pieces. Are the syslinux binaries or /pxelinux.0/default the culpit? Very important!
I advise you to type the commands yourself MANUALLY in a terminal (aterm), and not to use the scripts provide in TC, so you can see EACH error/warning message yourself.
If you skip these steps then you have less tracking to pinpoint your modifications. the good changes in one part will be banned by bad changes/over-written in other parts.
If you are sure that you use the right binaries (from the same package) in the right final folder, then you can PXE boot the client (you confirmed). Then the PXE configuration file IS the problem.
You can prepare very simple PXE configurations with any text editor. Make many, it is easy and fast to make one, and modify its copy. All done in a private folder. Then try one by one each configure you created, by coping it to the right folder (/netboot/pxelinux.0/). Then plug the PC client to load your new config from tftpd server.
If your graphic menu starts but quickly choose the default menu, then I suspect it is a *TIME* directive wrong settings in the config.
Come on, there are not so many combinations you can choose from, just use the maximum time(out) for all, play on safe side.
thanks for your feedback. good luck!