Thanks ... is this really the only way, though? I'd rather not buy any more stuff than I have to. I also really like the Arduino IDE and don't want to start with another program.
I would try to de-solder the USB socket, and break it out on a wire to its own PCB, but my soldering iron isn't powerful enough to de-solder the tags, heh.
How do xBee / bluetooth devices manage to reprogram Arduinos wirelessly? Do thy plug into the ICSP? If they just have access to RX and TX, surely I can reprogram my Arduino with a wired connection in a similar fashion?
Other ideas: the Arduino Pro and Pro mini from sparkfun program via 6-pin header cables (I've got one) ... what pins do they link to? Can I use this cable to program the Mega, with the appropriate connections?