I agree, but I have a feeling this isn't a small fix. Sounds like someone picked a mechanism that seemed to be equivalent but is not. Swapping that will require a lot of time and testing.
Lucky them, there is an automated suite[1] to verify the correct behavior :-D