Bug-for-bug compatibility is a problem, but breaking backward compatibility would be a much bigger problem, so even as the lowest layers of the operating system are revised and rewritten, the layers that applictions talk to (the application programming interface, or API) are carefully tested to ensure that no changes are visible to the application.
FORBES: What Is So Great About Microsoft?