If there are reasonable opt-outs, then you can have your cake and eat it without jumping ship to Linux/FOSS. (And, to a lesser extent, you might face the same problems there, e.g. with Ubuntu)
The problem is that with all platforms, the opt outs are hard to find and, even worse, hard to even know when the opt outs even exist.