Oh, invisiblegran, I AM that person! I don't mean I'm your DiL, but I have done exactly that to other people! Two lots of people over the years.
It makes me quite cross, but I don't usually apologise, as I don't want to draw attention to it. I am used to working with lots of people with a variety of names, so really should be more aware, but they just caught me out.
I then got so confused (let's take the example of saying 'zed' or 'zee' to keep it simple and anonymous).
I would say to myself 'This is zed, oh I usually make a mistake and say zee, or is it the other way round?'
Yes, it is disrespectful, and I don't know what to say to excuse it. I always just hoped that everyone knew I was normally a pleasant and kind person, and would forgive me. Strangely I was talking about it with my DiL this weekend, as someone at work is muddling her name with someone else's.
I have difficulty telling left from right and it really felt like that - a complete blind spot.
I'd also add that if your DH has a name that can be pronounced differently, he may be used to this happening occasionally (like Sara / Sarah) and that's why he's less bothered than you. I also guess that this is especially bothering you as you don't have a good relationship anyway. But I'd certainly try to park this bit of it.