An excellent way to have complete control! But then you either need to pay for co-location costs or a dedicated line. Not to mention all of responsibilities of owning your own server (setup, admin, security, load mgmnt, etc...) get added to your list of things to do. I'm not poohpoohing the concept - just expanding the picture. :)
There are good hosting providers out there. Not one of them fits all needs. Mine suits me fine as they give me the level of service I expect for a price I think fair. I'm not a high-bandwidth site nor do I need lots of support. I have command line access when I need it and when I ask for things slightly out of the ordinary (like the cURL library) they either work with me to get it installed or tell me why they don't want to do it. Sometimes they offer a suitable alternative as well. The point is you need to know where your strengths are and then find a solution that fits. The only way to accomplish this is research.
to answer your question - possibly. DNS determines what services (www, email, ftp) are located where. What your telling me is that the host either doesn't handle DNS or does such a poor job of it that they felt they needed to have someone else handle DNS. The question that comes to mind is if the host isn't handling the Domain's mail, who is? The folks that are providing DNS?