Nether portal mismatches [duplicate]
The answer: Enter the nether and manually put portal C back. Then you will have two sets of portals which work the way you want.
Explanation: Nether coordinates correspond to overworld coordinates divided by 8. The portal coordinates calculator you link to is simply multiplying or dividing by 8 depending on which coordinates you enter.
When you enter a portal in the overworld it calculates the destination nether coordinates. It then searches a bounding area of 128 blocks from that destination coordinate and selects the closest active portal. This searches a bounding square of 257 X 257 blocks. This is the destination coordinates plus and minus 128.
If it does not locate one in that bounding area, it creates one.
In your case you constructed portal A, entered it. It calculated (-3, ,29) as the destination. It then searched a square from (125, ,157) to (-131, ,-99). It found no portals, so it searched for the closest suitable area and created portal C.
You then traveled -592X and -606Z blocks away (not 1200) and constructed portal B. When you entered it, it calculated (-77, ,-47) as the destination. It then searched a square from (-205, ,-175) to (51, ,81) and it located portal C so you exited there. (128 nether x 8 = 1024 overworld)
When you entered portal C the closest overworld portal was portal A so you exited there.
You tore down portal C and built portal D. Entered portal D which exited portal B as it was closer then portal A. Entered portal A which exited portal D as portal C is gone and Portal D is within the 128 range. Entered portal D to once again exit portal B as it is closer.
So the solution is to reconstruct portal C. It should have never been torn down in the first place.
For more information visit the wiki on portal linkage.