2. It can't reference two chains with double-spends in the history. That is invalid.
1. No one forces them to do anything, but if they chose the shortest stream of work, they won't get confirmed in a timely manor.
2. Is the entire branch with the double-spend discarded in Iota? I would have thought not, because that would mean clients would need to resubmit all their transactions, since there are no miners to place them in the longer chain for them. It ought to be possible to keep the double spend branch, but just not apply the double spend transaction, since it spends an already spent output?
1. But it may not always be unambiguous or other reasons that they can't do what you think they are incentivized to do. MUST is not the same as incentive. Be very careful in analyzing the details of consensus designs.
2. The transactions that follow the double-spend must be because they include the double-spend by referencing it. You need to study more closely the concept of the DAG. The transactions reference prior transactions. I thought you know that. So if there is a double-spend, but isn't known to be a double-spend until later, then all the transactions that referenced it will be potentially reversed. But again which set? It is ambiguous. Thus chaos of forks.