Some of the advantages include:
Localized DNS server can provide better performance because it deals directly with root servers
Resources are dedicated only to the computers you authorized to use the DNS server (unlike the ISP's DNS servers which will be serving most of its customers and possibly dumping older records sooner )
You can add customized zones for other purposes (e.g., an intranet)
Security can be better because someone else can't tamper with your cache (assuming you take reasonable steps to secure your system)
If the ISP's DNS servers are down (typically very rare), it doesn't effect you
I run my own DNS servers at home, and also set them up for my clients who use Unix servers.