A quick look through online search results show that the indeterminate checkbox state does not seem to be a very common UI interaction, yet Microsoft has persistently stuck with it and are probably the best examples of software applications using the design pattern. There are many alternatives to using a tristate checkbox that have been looked at in other discussions, so my question is whether Microsoft have continued to use it because it is within their UX design guidelines or is it because there are very specific cases where it is actually best to use checkboxes with an indeterminate state? If so, why does this mostly apply to Microsoft products and not other types of software?
Indeterminate checkboxes have been sort of a tradition in Microsoft products, mainly for nested checkboxes (symbolically meaning partially checked, or as indicators that a user has acted on a control) and mainly in installers. And as you mention, tri-state checkboxes are also currently part of the Windows Store app guidelines, but they are used on OSX as well.
I think it's more of a form pattern than an application pattern.
I would venture saying that it has to do with tradition on the one side, developers being used to working in a determinate way, plus frameworks with elements that haven't changed in a long time (just look at WPF and XAML, excepting some new Metro-looking components, there hasn't been many revolutionary concepts); and with functionality on the other.
If you go to any Windows file attributes, you will see the same indeterminate checkboxes for Read-Only and Hidden. So it's not just devs that are used to them, it's also (advanced) users.
I'd say that: a) They serve a purpose (marking a nested element as partially checked, in tree views where each node has a checkbox next to it) and b) The price of changing something so rooted in people's minds is quite high, and that's the second reason why tri-state checkboxes are still being used.
I just found a good example: Dropbox. Go to preferences, Advanced tab and click Selective Sync. You'll see the old checkbox tree. Dropbox is cross-platform.
These examples and the fact it's part of the HTML spec, and implemented by the modern browsers on all platforms, suggests that no, it's not strictly a Microsoft-only pattern.
Other types of software that I've used recently where I've noticed a try-state checkbox has been Omnigraffle.
For example if a stroke is enabled on some elements but not on others and are grouped together; the Inspector shows the stroke check box in an intermediate state.
Here, the try-state check box is a crucial way to help me to quickly understand the different styles of multiple elements.