Coming from someone who has worked in a bank (well two banks actually) it is not so much the mainframe vs Windows vs Unix/Linux argument that is the problem. There is no argument about the uptime of enterprise mainframe systems, you can't really beat 99.9999999% can you?!
The problem is a lack of business interest in keeping up to date with hardware (Yes even an AS/400 needs replacement from time to time), software (particularly software updates to core banking systems which cost a kings ransom) and disaster recovery.
The first bank I worked for refused to spend a single penny on replacement of core network switches, despite an email from myself (The Network Administrator) entitled "THE NETWORK IS GOING TO FAIL!". One month later a core switch in the server room died.......it took ONE. WHOLE. MONTH for the CEO to sign off the purchase order for new switches.
Hell, even my own department manager came out with some priceless sayings as "The Network switches aren't important, if we have to we'll go out and buy some old IBM dumb terminals"
Any business unit that doesn't make money is seen as a "drain on resources" . I frequently struggled to get essential, core-infrastructure updates approved despite obvious technical evidence (explained to management in very easy no-technical ways) that important systems where on the verge of collapse.
The phrase most often used in banks is "if it ain't broke, why should we pay to fix it?"
Until the management teams and board members of banks understand that you need to constantly invest in IT in order to maintain it, then major outages such as the one at RBS will continue to happen.