I think HFS treats the 'problem' in a correct manner. Tests are done with HFS 2.2 build 137
If you mount your drive D: in any way and then save the virtual file system you will get error-messeges (abort-retry-continue) at a new startup
caused by windows, and you need to insert a disk even to remove the folder from vfs!
If you mount a folder D: in a running system, there are two ways to do it.
If you mount D: as a real folder, all works well: If the drive is empty, HFS doesn't even display the folder. That is o.k.
If you mount D: as a virtual folder, HFS displays the folder D: (with his directoies as folders) even if your remove the disk. But with the disk removed, no files will be displayed, so nothing can be downloaded and the folders display correctly as empty folders. Thaat is o.k. too from the point of view of a downloader connected to your server. But if you insert another disk, hfs will not even notice it and continue displaying the folders of the first disk. That's also correct in the sense that virtual folders are user defined and won't change.
Summary: You cannot user virtual folder for D: and mapping any removable drive to a folder you can't restart hfs without having it connected.
Suggestion: use virtual drives (see Daemontools) and map them as real folders!
Note: Naming the folder without ':' does'nt change anything.