@zithro impressive script. I was facing the same problem and used this approach:

1 - create a shortcut on the desktop to a shell script (as you did above)
2 - download and compile ttyecho (instructions here)
3 - shell script contents:

#!/bin/bash #swith to display to tty1 sudo chvt 1 #start emulationstation on tty1. Switch back to tty7 (xwindows) when emulationstation is quit sudo ttyecho -n /dev/tty1 "emulationstation ; sudo chvt 7"

To return to xwindows exit emulationstation using the start menu.

p.s. note that you can switch back and forth between X and Emulationstation by using Ctrl+Alt+F7 and Ctrl+Alt+F1 if you like to keep both running at the same time.