The maximum cap when one should be able to collect a survivor benefit is nonsense. In any private pension, the survivor is paid regardless of any 'cap'.  The CPP does not have a funding problem. If someone contributes for 40 years (or whatever number) their 'survivors' should be entitled to collect.

As for why the public employees are treated differently, there is no good rationale other than labour peace. There is already a two tier retirement system in Canada, with public tax dollars funding 50% (or more) of retirement for public sector employees.

Offering them more advantages than Joe Public is simply wrong. They should not get full benefit after 35 years to the CPP portion of their pension, while others have to contribute 40 years for the same benefit.  The government's answer to the lack of pension (fairness) is to have employers and employees ramp up contributions to pad pensions. 

Pension reform should start with treating everyone equally.