I think this is context dependent. Over time, within a single code base or ecosystem, incompatibilities between "close enough" solutions can add up and create a lot of problems and complexity, kinda like floating point inaccuracies. Especially if you're not going back and revisiting the structure/abstractions you've already got when you're adding/changing something.
There's another angle too, which is that time taken to improve your abilities isn't necessarily irrational, especially because that improvement is usually applicable in many different ways. It can be an investment.