A lot easier if you use an online wallet like blockchain.info.
2 Ways:Poor mans way:Watch the wallet address in a loop, ever n seconds / minutes. Query transactions. Double the send. You might need to worry about double sending in this case though. Might need to persist the sent transactions, and verify that you haven't already sent.
Or:Configure blockchain.info with a IPN. When received, double and send. This would require a service / site hosted somewhere, locked down, extra security etc.
I could knock up a console app to do it, with config, for 2btc