CMD calls parts of Win32 for some things, one of which is a directory listing. You need a drive letter to set a current directory, which by definition requires a drive letter context (for back compatibility with older console programs).

You can always do a rundll32.exe from the command line get to pretty much anything in Win32.

CMD.EXE is stupid because it has to be stupid in places to be compatible.