Fast forward to 6 months after launch. We've now replaced the native control with an "all singing/all dancing" javascript version written in Vue. Thing is, it doesn't know all the lyrics and it couldn't do a box-step if it was stepping off a box. We get bug reports literally every few days because it doesn't act like the native control. And we'll _never_ actually stop the bug reports because people on different systems expect it to act like the native one. Something that is literally impossible to do when writing it on your own.
So now, even with all the evidence pointing to it being a bad idea, nobody want to rip it out because the integration is too muddy and could cause further bugs.
:facepalm
Scrolling behavior is user-configurable. There's no need to decide "Fuck your preferences, one scroll-wheel click is going to be 1 line of text" and override my configuration. There's no need to implement "momentum" to scrolling, or make it bounce, or try to implement smooth scrolling since my browser does it anyways.