Reinventing the wheel is fun for the developer and good for him (he gets to learn how to make the wheel, etc.)
But for the customer, 99% of the time, the original wheel is good enough and all you are doing is wasting their money/time.
Please - from a client of many software projects, build me something that works in the quickest time possible! Don’t reinvent unless it is a critical success factor FOR THE CUSTOMER!