Paul should have left earlier is given as 'Paul aurait du partir plus tot'.
I could have learnt to swim is given as 'J'aurais pu apprendre a nager'
These are exactly the same constructions, therefore they can not both be correct.
(Apologies for the absence of diacritic marks)