I had the same problem about a year ago. Switched ISP's, and wanted to put my DNS servers on both networks.
If (at least with windows) you have 2 different subnets/gateway addresses, windows has the option to set one as default. The default gateway will be the ISP that all outgoing traffic is set to.
This is a huge PITA, one would think an OS could figure out which NIC routes which connection. The way I finally moved, was created ns1 on ISP1, and moved ns2 to ISP2. Each one of these servers I setup to listen to both ns1 and ns2 ips on their ISP's
Now, if this doesn’t make any sense, I’m sorry