Only Driver FCurves with named shapekeys (instead of shapekey indices) was getting picked up by the UI code for testing whether a property had drivers or not. So, while this version patching code worked when it was initially written for the 2.4x -> 2.5 transition, some subsequent changes ended up breaking this. As this stuff is not used often, the breakage wasn't noticed.