I eventually figured out that the answer to this question
was to choose --bg-daemon rather than --fg-daemon when starting the emacs server.
But when using --bg-daemon (or equiv. --daemon), the desktop.el package acts like the server is running in foreground mode insofar as the last visible frame cannot be deleted using C-x 5 0.
I have tried saving my desktop from within an emacs --daemon session and then restarting emacs using the --daemon option to see if the server would then allow me to delete the last visible frame after opening my saved desktop.
Any thoughts on why the emacs server starts acting as if it were started in --fg-daemon mode after a saved desktop has been restored?
As a sidenote, I tried to analyze the .emacs.desktop file but found it difficult to read because emacs is not able to format the heavily nested s-expression properly (spaces in pathnames appear to be confusing the parser).
I'm running the most recent version of emacs 28 from MINGW-W64 repository in the MSYS2 project.