When the server certificate itself is not known as trusted by the client (i.e. pre-installed as trusted on the client) then the trust into this certificate needs to derived from somewhere.
Typically this is done by using root CA pre-installed as trusted on the client, for example as part of the operating system or browser installation. Then build a trust chain from the leaf certificate send by the server in the TLS handshake down to the trusted root certificate pre-installed on the client system and thus derive the trust from the root CA up to the server certificate.
When running your own DNS server for domains which don't belong to you, you don't get publicly issued certificates for these domains, since your DNS server would not be seen as responsible for the domain and thus not be asked by the CA (ignoring DNS spoofing attacks here - see here for how CA can protect against this).
All you get is that the DNS lookup resolves to your own IP address for the clients controlled by you which use your specific DNS server. If you want to serve these foreign domains by your own (i.e. impersonation attack) you still need to provide these clients with a certificate they will trust - which as described you cannot get from a CA the clients trust.