Here is why:
First, you need to design it properly, and most devs are not good language designers. The chances your DSL is going to be good is very low.
Second, unless you are incredibly talented and have little constraints, you will not even remotely provide 1% of the tooling existing languages already have for free. I've seen so many DSL without basic syntax highlighting nor linter it's not even funny, but you need much more to be productive with a new language. Even if you are using macros and claim to be able to use the tooling for the main language you come from, stop a second and think about the last time you had fun debugging a complicated macro magic.
Third you need to test it and document it. Do you even do it properly for your regular code? It takes time and resources. A lot of it. Which could be better spend on the project, or on the library/API you should be writing about.
Fourth, what about training? Because you can hire somebody for language X. But for your DSL, you'll need to train them.
Then of course, you plan to support it for as long as it's used. Right? Right?