PeterH:
This is the part that is an unknown. If there is a utility/application/API that can be run on a PC to fire the gun, and it is feasible to include a PC in the solution, then all you need to do is send a command over the serial link to execute the command to fire the gun - no USB emulation needed, just use the standard Arduino USB drivers. Is such an interface available, though?
The USB rocket launcher that I linked to earlier in the thread (from thinkgeek.com) includes programs on Windows and Mac to fire the rockets. I don't own it, so I don't know how clunky it is.