From the examples that I saw in this thread and on Wikipedia, it seems like this framework does try to account for this complexity by positing more specific rules that require those changes to happen in order for the Merge to be allowed. Since I just heard about this for the first time, I'm not sure I can justify the claim that it succeeds for every aspect of every language, but it looks like the people promoting this approach are aware of quite a bit of the possible complexity of language.
Can you suggest a more example of a linguistic phenomenon that you think this framework can't deal with?
Can you suggest a more example of a linguistic phenomenon that you think this framework can't deal with?