Yes, but MtGox does log my send transaction, and does know about the received transaction from SatoshiDice. For each transaction they know about the exit point, the following entry point, and they can trace the final point at an MtGox address tied to an MtGox account.
Right, but the problem is that it traces to a MtGox account
that is not yours. MtGox uses Bitcoin accounts to receive money. When they spend that money, it comes from their receiving addresses. So your payment went to someone else's receiving address.
I have a deposit address at Mt. Gox. Say I send 10 BTC to that account. The 10 BTC will be sent to *my* Mt. Gox receiving address. Now, say you send 1 BTC to SD. If it uses some of my 10 BTC, which it might, then your transaction's sending address will be my transaction's receiving address. To Mt. Gox, it will look like I am depositing more Bitcoins.
IMO, it is SD that is broken. It does not make sense to automatically send Bitcoins to an address just because it sent Bitcoins to you. There is no way to know that the recipient will bear any logical relationship to the actual sender.
Well, SD is probably assuming that money is coming from a wallet that you control--which is not a bad assumption. The alternative would be to require a return address somehow and creation of accounts and that's probably just a lot more trouble than it's worth. But yes, the hard part is proving that the money isn't someone else's. Gox is well within the realm of logic to assume that the BTC that was sent back to you from SD was a deposit to someone else's account.