Not really since the map wouldn't be empty at all in my cases.
We use MDC quite extensively, i.e. 10-15 key-value-pairs per event. We never ever read values from the MDC in our application code. The MDC is used purely for logging and not as some magic bucket for moving around objects across method calls.
Because of this, it would be feasible to disable MDC handling altogether. I suspect that most code is using the MDC like this, i.e. only writing, never reading (I've never seen any MDC values of libraries in my events).
Chances are quite high that an application would work exactly the same way with MDC disabled, just a lot faster. While disabling MDC could lead to application breakage if the application is indeed reading from the MDC I don't understand the problem about this. I'd just not disable the MDC in that case. This is comparable to pulling the network cable for an application that is using the network. Yep, it will cause breakage. Just don't do it in those cases.