WPF's biggest problem is being so closely tied to DirectX. It was fine when Microsoft were more interested in developing on just Windows, but trying to port to other platforms just became impossible.
It's a shame they've taken so long to come up with a better solution. If they'd just remove all the bullshit telemetry from WinRT people might actually start using it.