When new APIs are in development (in a standards body) by all means implement the incomplete/early version in your browser! Just put a warning somewhere for developers that changes will happen and that they should expect to have to update their code along with the standard as each iteration comes out.
Microsoft made a huuuuuuuge mistake by implementing an unfinished API and then refusing to make breaking changes later. Breaking changes are to be expected when you do stuff like this!
Back when MS did this they were still highly arrogant about their position in the browser market and probably still thought they could get away with their usual "embrace and extend" bullshit... Where they decide "the standard" regardless of what any standards body or the rest of the world/community thinks.
BTW: I've recently found this MSDN blog with explanations on some of their decisions (https://blogs.msdn.microsoft.com/oldnewthing/)
Coupled with an indiscriminate upgrade policy it is actually reasonable to deprecate features from chrome.
The situation is not very different from now with Chrome implementing unfinished proposals.