I get desktops (missing) usually when doing maintenance with my hosts going in/out of maintenance and cp-parents being removed. Is the VM that is missing actually exist in your vcenter? If it doesn't its just a stale record from the Horizon side and needs to be removed from the db and it will spit out a new desktop with that name depending on your deployment scheme.
Connect to the ASDI on the connection server and just query for the missing desktop and delete the record.
(&(objectClass=pae-VM)(pae-displayname=MissingVM))