This is the downside of making it easier to provide 'new' cores rather than derivative cores.
I couldn't agree more. It certainly would be better Arduino, Sparkfun, Adafruit, etc..., provided one common core rather than providing their own similar, but gradually diverging ones.
I guess it's simply easier and more convenient to make changes to their own forked code, rather than submit changes to somebody elses.