If you send coins to new chain and that chain, using your own words "does not end up being better", you will loose coins.
I think that protocol upgrades and development changes will be able to be done through single blockchain, if announced ahead of time enough. Also, I can think of client-to-client queries like "are you ready to switch to protocol XY after block Z?". When enough clients in the network agree on it, lets do it.
In current days, making an "agreement" with several largest mining pools would be sufficient.
True, that threat of losing the coins will keep the number of coins in the new system in check until there really is enough demand for them, so I don't see it as a bad thing. And yes, for the recent future, blockchain upgrades can be done in reasonable time. However, the bigger bitcoin grows, the more time it's likely to take.
Such a transaction type already exists for getting Bitcoins "off" the Bitcoin network.
Just define a bogus Bitcoin address, and send Bitcoins to it. The bitcoins can never be respent. Any Bitcoin address that is made up of mostly words could not have been generated in a manner where the private key is known, but which contains a check code so it doesn't fail the validation checks, would work.
Here is an example. 1B1ackHo1eForYourBitcoinskDEzxdZ6j
You can send Bitcoins to it, and they will be forever gone.
Simply hardcode your alt chain to recognize this special address as an import of coins and you're good.
No one presently wants a way to import non-Bitcoins into the Bitcoin block chain, so no one will accept any changes to accomplish that without an overwhelming consensus desiring it.
Yes, like I said, it's possible already, just not standardized, so this is mostly a cosmetic thing. What you proposed, however, is lacking in that it only contains the network-id, basically, it doesn't contain the information on how to verify respends in the new network.