- When the matter really is preference.
- When there is difference of expectation about user knowledge or skills.
- When no one's asked the user yet.
Let's take each in turn:
When the matter is really preference.
You will ultimately lose this one. If it truly is preference, then by the time it gets to QA it represents a change. Why change it when it's not going to make it better? If your way really is better and you can explain why, then it really isn't a matter of preference.
When there is a difference of expectation.
Here you may be right or you may be wrong. Ideally you have a detailed user persona that you can consult. If you don't have these, ask your nearest user proxy. Typically, this is the support guy or the implementations guy. Let that person's input stand. Oh, and develop user personas.
When no one's asked the user yet.
This is when you could do usability testing ("ask the user") but you simply haven't yet. Ideally, you'd schedule some usability testing or convene a focus group to identify this. If you can't, fall back to asking your closest customer proxy.
Sure, it's easy to get annoyed when your usability bugs get closed as "our users wouldn't want it that way". So stop being annoyed and start finding a leg to stand on!