There is always a reason to not rewrite something once it is released and operational: there are almost certainly other things you can be doing that would provide higher value.
(Also, I am reasonably certain that the issues you are eluding to with Cydia not working correctly on iOS 4.0b* were, as usual, WebKit issues, which I specifically admitted in my post: and, in fact, during 4.x is when I came up with a much simpler way to handle that specific implementation detail. That said, looking through my git repository, the only changes I seem to have made for 4.0 seem to be to things that fundamentally are not public APIs: restarting SpringBoard being the major one.)
Yeah, there was _UISwitchSlider class or something being used. I ripped almost all of that stuff out for "Cydia 1.1"; except for saurik's WebKit code to replace the crippled UIWebView, it's almost entirely public APIs now (UIViewController, UISwitch, etc).
(Also, I am reasonably certain that the issues you are eluding to with Cydia not working correctly on iOS 4.0b* were, as usual, WebKit issues, which I specifically admitted in my post: and, in fact, during 4.x is when I came up with a much simpler way to handle that specific implementation detail. That said, looking through my git repository, the only changes I seem to have made for 4.0 seem to be to things that fundamentally are not public APIs: restarting SpringBoard being the major one.)