There is an old joke about the American West which goes, "Q: How do you know which people were pioneers? A: They are the ones with arrows in their back."
USB-C is a phenomenally complex system from an engineering perspective, serving at least three masters (compatibility, power delivery, and enhanced performance). As these systems go through the standards process you have vendors designing silicon in anticipation and engineers designing circuits. Not surprisingly, I have met just as many EE's who 'design by looking at something that does something similar' as software engineers who start with code that does something close and hack it into compliance.
Actually taking the time to develop an understanding of the complex system after it has made it through its final standards ballot, and then build systems with it take too long in today's market. You would bring something to market 3 to 5 years after the first products hit and were probably establishing defacto standards.
So the business side pushes to get something out, the engineering side learns just enough to get it to work in their lab, and the trademark validation/usage process is new/non-existent. As a result you will see early products that are broken in various ways until the collective knowledge and number of correct examples reaches the tipping point. After you reach that point future designs will likely work reliably because the chance of everyone involved having enough examples to start from is high, and compatibility issues will have been publicized and thus written into the book of "things not to do."