the answer is a firm no...
could you imagine the chaos if people could just claim domain names just by adding them to their DNS servers!!!
you have to register a domain name...
now here is the part where it gets a little tricky...
once you've registered a domain name you are able to host the site yourself, but the primary pointer for your name server will be held by the registra, that is to say you can either have a web redirect (which is not what you want)...
or you can instruct the registra to point at your name servers... the problem here is that name servers have to be names, and cannot be IP addresses, so you'll need a seperate pointer pointing to your DNS server...
I don't know if you are following, but I'm a little lost...
basically, you can't set up a domain name for free.
you'll have to pay a registra for that name...
you can host the DNS yourself, but you'll need a named DNS server -that means you'll need a named DNS server... (which again you'll have to pay for -unless you use a free service like no-ip.com to name your DNS)...
the only real pro to having your own DNS server for your domain is you get to create subdomains very quickly, with regular tools (in this case windows tools)...
however the control and admin pannels are so good on most registras that you needn't really worry about this...
I hope that all made sense.