The problem is twofold:
Pilots see that not making a PTL has no consequence (for them), in fact it gets you ahead most times by reducing the overall delay.
ATC seem UNABLE to enforce a promulgated PTL from the NOC.
There is a disconnect between the NOC issuing a PTL and ATC being able to ask/tell aircraft to make their PTL. If I hear another aircraft get my assigned PTL because they are early, why can't ATC tell them to sod off as that is assigned to my aircraft?
If the ATCOs cannot enforce a PTL the system fails. They can enforce a feeder fix time so why not a PTL?
That is the main issue here.
Yes pilots are not following the PTL but that follows them seeing no consequence for not doing so.