Are you sure you're querying your name server? What's in /etc/resolv.conf?
Also, since you didn't used CODE tags to post the zone file, I cannot understand there are any blank space(s) in the NS, MX lines. Also there are blank spaces in the various hostnames (like ns1. mydomain.com. dn. mydomain.com.), that should not exist. You can try the following:
@ IN SOA ns1.mydomain.com. root.mydomain.com. (
2011072615 ; Don't forget to increase it serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS ns1.mydomain.com.
IN MX 5 dn.mydomain.com.
IN MX 10 relay.my_isp.net.
IN A 22.214.171.124
ns1 IN A 126.96.36.199
dn IN A 188.8.131.52
Reload and run
dig SOA mydomain.com @ns1.mydomain.com
dig MX mydomain.com @ns1.mydomain.com
From the first you should check if you're using the correct zone file