I can't say I'm satisfied, and it's for a different reason than most.
I'm not satisfied as to why the "compelled speech" argument is being used at all.
There's a lot of important context here - that argument is used a lot with regards to this issue, and it often comes from the mouths of less...kind...people than have generally used it in these discussions, and so it becomes a red flag. But there's a larger issue, and that is the general philosophy behind it.
When you participate on Stack Exchange (or, really, interact with anyone), you enter into an implied social contract. It basically says, hey, you can do and say what you want, but what you say and do will have consequences. This is just how life works: when a kid holds the door for somebody, people think better of that person; when a kid decides to bully another kid, that's a problem.
So on Stack Exchange, the way it works is - you can say and do what you want, but if you say something that's offensive - you use a slur, for example - you get suspended.
It used to be that if something wasn't Nice, that's how the 'boundary' for this sort of contract was set, and the boundary lines were set by moderator interpretation, which makes sense for a lot of things!
The pronoun issue is slightly different, and here's why: there have been a lot of well-meaning folks who just don't get it. I can't count the number of people who have said in the past couple weeks, "wow, I didn't understand this before" or "I need to learn more about the lavender/LGBT+ community". With that lack of understanding, Be Nice becomes harder to interpret and follow. How do you know how to Be Nice when you don't understand the situation well?
It becomes more complicated when you realize that there are groups out there who hide behind that misunderstanding as a shield for their intentionally offensive behavior. This mixture of fake misunderstanding and sincere misunderstanding begins to grate: you don't know if the person you're explaining to is sincere, and at some point you just want to throw your hands into the air and give up.
So Stack Exchange in general came up with a pretty darn good idea: elaborate on the Be Nice policy to explain exactly what that meant, especially for more marginalized groups like the trans community. And where do you start with that? Pronouns.
You see where this is going.
I can't say Stack Exchange has handled this well (unfortunately their actions have mixed up the Code of Conduct change with what they did to Monica, and my thoughts on that are quite clear), but the base change they made to the Code of Conduct? I can fully get behind that, because it's not compelled speech.
It's part of a social contract you entered into when you signed up. It's part of Be Nice. It's just elaborated upon.
EDIT: A lot of people in general are talking about the difference between a negative command and a positive command. To them I say this (quoted from some comments I wrote on another answer):
if you had a friend who preferred the nickname "Steve" instead of Stephen, but you restructured every sentence to avoid using that nickname because you found it problematic, and even continually stated you found that nickname problematic, that would be really uncomfortable for Steve, right? He wouldn't feel welcome.
Except we're talking about pronouns, not nicknames. Turns out, those often feel even more important to a person than nicknames, so the pain is even more deep.