Maybe another viewpoint will help. Maybe not, but here goes... 🙂
Working back from the assumption that your web site is correct, and that the example dig is correct, my first dig shows that my DNS is set up correctly.
Well, 'correct' is a relative term, here 🙂
The dig shows that the server is responding to a request. So in that respect, yes, the server is 'working'. I think MrHoffman's point, though is that the result of macserver.macserver.local is questional, at best.
Think of it another way - think of an actual, real domain - heck, let's call it 'apple.com' for sake of argument. What you have here is essentially, a machine called 'apple' in the 'apple.com' domain - i.e.apple.apple.com.
That might be what you were aiming for, and that's OK - I guess - but I think MrHoffman's point is that it more than likely points an an error in your setup (or thinking) because you're using .local as the TLD.
If you extrapolate your domain records, though, you're going to end up with things like 'client.macserver.local', 'printer.macserver.local', 'otherserver.macserver.local' and so on - this starts to make less sense since there is no direct relationship between 'maserver' and the 'client', 'printer' and 'otherserver' hosts. 'client.local', maybe, but not 'client.macserver.local'.
You would be far better off scrapping the entire .local setup - let the OS handle that itself, and use a completely different domain for your local network. This opens the question of whether it should be the same domain (e.g. company.co.uk) as your public domain, or something a little different (company.net) or something completely different entirely (mynetwork.com).
If you choose the same domain as your public domain then you will, by extension, implement split-horizon DNS which is where people get different results (or, at least, can get different results) based on where they are - external users would get a public IP address whereas internal users could get a different, local address.
If all your services (mail, web, etc.) are externally hosted then this isn't a big deal, but if you run your own mail server or web server then it becomes more important.
MrHoffman's point (and recommendation) is that you use a different domain for your internal network to avoid the administrative overhead of split-horizon. If it's done properly your users won't notice or care.
At the end of the day, though, as MrHoffman mentioned, this is your own internal box. The sole scope of people affect by any errors are... well, you and maybe users on your LAN (although you're not going to have users on your LAN use this server until you've settled some of the above questions, anyway, so they might not be a factor at this point).