I understand what your trying to do, but if you scrolled down in the first link it provided a script that should perform what you are looking for complete with the desktop entry.
#!/bin/sh
# call this script with domainname as parameter
# to start domain and open viewer
/usr/bin/virsh start $1
# domain must be known to virsh
/usr/bin/virt-viewer -w $1
# -w to wait until domain is running.
This script takes the domain as input ($1) from the command-line... so you would call:
sh vm.sh [domain-name]
In your script above you call the domain Xubuntu... is this correct? Remember capitalization counts. You can hardcode it like that but defining the domain at the terminal when called allows for change. Matter of choice.