Not sure about your immediate questions, or why the directory was not created by default, but if you want the directory then perform the following:
su -
{enter root's password}
mkdir Desktop
Typing the dash after the su command ensures the su command changes to root's $HOME directory and does not stay in the current directory with the user's permissions and environment variables.
The fact that your program is hard-coded to and wants access to /root/Desktop probably will get a few people excited.