Seems to me the Mach3 part of it is pretty straight-forward, and there's no question Mach3 is more than capable of controlling the machine. Mach3 can control six axes, and you have six axes to control. The real challenge is the G-code generation, which is mostly an exercise in kinematics and coordinate system transformation, and not something anyone here is likely to be able to help with. The motion of each arm can be exporessed by some fairly simple equations of motion, so you can come up with a means of mapping any given X/Y position in the drawing to a set of coordinates for one of the two arms. You clearly need to be able to partition the drawing into sections to be drawn by each of the arms, such that they won't crash into each other while drawing. This pretty much has to start with splitting the drawing down the middle between the two gantries, then perhaps shifting that dividing line one way or the other to "load balance", if the line density is not pretty consistent on the two halves. Then, you have to translate the 2D vectors comprising the drawing into the 3D movements of the arms, doing the necessary kinematic permutation from cartesian coordinates to the machines coordinate system. Given the euqations of motion for the arms and gantries, this should not be fundamentally difficult. Finally, you need to output the G-code, merging individual moves for the two arms into single G-code move commands that will complete in essentially the same period of time, so you keep both arms busy drawing at full speed as much of the time as possible, rather than having one axis running full speed, while the other moves a low speed because it has a shorted line to draw. All perfectly do-able, but that last part is, I think, not trivial to do efficiently.
Something to consider - it would probably be a lot simpler, and more efficient, to have two computers, and two copies of Mach3 running, one controlling each arm, so you don't have to do as much coordination between the two. This would make it a LOT easier to keep both of them moving all the time, and eliminate that last nasty step in the G-code generation.
Regards,
Ray L.