Surely additional calls or procedures are not needed to protect against this sort of incident. How about doing the basics like briefing the departure off the chart while the other pilot checks the legs?? There is no way you could make this error if they had done that. And what about the fact that when lining up on the runway the map display on the ND shows the runway icon about a mile north of you and perpendicular to your track!!
As mentioned, the MEL departures are not RWY specific and neither is the airways clearance, which may have something to do with the propensity for ATC to change runway configuration at the drop of a hat. But in the 737 all you need to do is change the runway in the FMC and it will change to the appropriate SID. Obviously you must still check and brief the current runway departure. (Plus performance, E/O procedure, etc)
You can’t just keep adding procedural backstops because some pilots can’t be bothered or can’t remember to do the basics of their job.