Crazy mx record redirect

So here is the story i have hired an outside company to filter spam i have since changed the mx record on my server and i have locked down the firewall. Spam has stopped totally which is great however my mx record seem to be propagating back and forth between my old and my new one day it will be one the next the other. Almost as if there are two SOA's fighting over what it should be. Which we all know is a big problem cause one day there will be mail the next none lol. The following is my zone file in my named directory. All the names and numbers are changed.

File name xyz.org.zone

$TTL 18000
xyz.org. SOA 200.100.150.10. admin.xyz.org. (
2006022739 ; seri$
3h ; refresh
1h ; retry
1w ; expiry
1h ) ; minimum
xyz.org. IN NS ns1.xyz.org.
xyz.org. IN NS ns2.xyz.org.
xyz.org. IN MX 0 xyz.org.inbound10.mxlogic.net.
xyz.org. IN MX 0 xyz.org.inbound10.mxlogicmx.net.
xyz.org. IN A 200.100.150.10
ns1.xyz.org. IN A 200.100.150.10
ns2.xyz.org. IN A 200.100.150.10
mail.xyz.org. IN A 200.100.150.10
www_xyz_org Celestial Voyager & Human Extinction Survival. IN A 200.100.150.10
calendar.xyz.org. IN A 200.100.150.10
webmail.xyz.org. IN A 200.100.150.10
powerschool.xyz.org. IN A 200.100.150.15
www.powerschool.xyz.org. IN A 200.100.150.15
ar.xyz.org. IN A 20.0.0.10
intranet.xyz.org. IN A 20.0.0.15
helpdesk.xyz.org. IN A 200.100.150.10

any comments or help would be great
thanks

OK, switching records back and forth means contradiction between zone files, either being exported to one named process, or to another name servers. Since the name servers haven't changed recently, means that something in the records of the current zone file had changed. Are you the only one with access ? Make sure that no one else made changes at this time.
use "dig" tool to troubleshoot this like :

dig @NS4.IASA-INTERNET.NET xyz.org any

which currently prints :

I've seen strange cases with bind, the last resort was restarting the bind daemon, this fixes some issues sometimes. Oh, you can flush the cache with "rndc flush" and see if it make any difference.

LOL I guess its kinda funny cause I used xyz to hide my domain, it is not my domain name, I didn't realize when I used it that it was a real one. I ran the dig as you suggested and came back with these results. I also have changed my IP addresses for display purposes. The red IP address is the actual one hat was returned.

; <<>> DiG 9.3.4 <<>> @NS4.IASA-INTERNET.NET xyz.org any
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59460
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 2, ADDITIONAL: 3

;; QUESTION SECTION:
;xyz.org. IN ANY

;; ANSWER SECTION:
xyz.org. 0 IN SOA 200.100.150.10. admin.xyz.org. 2005091029 10800 3600 604800 3600
xyz.org. 86400 IN NS ns1.xyz.org.
xyz.org. 86400 IN NS ns2.xyz.org.
xyz.org. 86400 IN MX 0 mail.xyz.org.
xyz.org. 86400 IN A 200.100.150.10

;; AUTHORITY SECTION:
xyz.org. 86400 IN NS ns1.xyz.org.
xyz.org. 86400 IN NS ns2.xyz.org.

;; ADDITIONAL SECTION:
ns1.xyz.org. 86400 IN A 200.100.150.10
ns2.xyz.org. 86400 IN A 64.50.17.195
mail.xyz.org. 86400 IN A 200.100.150.10

;; Query time: 331 msec
;; SERVER: 208.56.193.83#53(208.56.193.83)
;; WHEN: Fri Dec 14 11:11:34 2007
;; MSG SIZE rcvd: 239

The record in red isn't the right one I don't want it to go there.
Also the IP address in red I have no idea who that belongs to or were it is. I think the red IP address is the one propagating 0.mail.xyz.org
If you think it would help to know the actual domain name let me know and we will figure something out.