If I am not mistaken, it is your responsibility to advise your mortgage company of any changes and set up a new Direct Debit mandate with them.
The bank hasn't really done anything wrong as a Direct Debit is actioned when the bank receive a request for payment from the third party, which they won't have done for your new account because your mortgage company weren't informed of the new payment details. They should have been notified by you in order to update your DD mandate and therefore request the money from the correct account.
On the other hand, a Standing Order mandate is to instruct your bank to make the payment on the dates you tell them. Only then would it be the responsibility of the bank to action the payment as required.
As your mortgage payments were paid by Direct Debit I'm sorry to say that this means it is actually you that was at fault.
I realise that this is all aggravation but if you send a written explanation to your mortgage co. and bring your mortgage payments up to date immediately, they should be understanding.