Disconnect the Black wire w/yellow trace line that connects the ignition switchboxes to the engine wiring harness then retest for spark. This is the 'Ground-to-Kill' wire, any short to ground in the wiring, ignition switch or lanyard switch will kill all spark.
Second, cranking speed, minimum 300 RPM for the stator to generate sufficient voltage for the ignition to function. Poor battery, cable connections, starter brushes, all eventually reduce cranking speed until the ignition fails to fire.
Lastly, that Idle stabilizer module, discontinued by Merc. Remove it, they ground the Bias to advance timing to maintain idle speed, when they go bad and advance timing indiscriminately they cause rods to come out the side of the block.
Disconnect the Black wire with the thin Yellow trace line that connects the switchboxes to the engine wiring harness, now test for spark.
This wire is the 'Ground-to-Kill' wire, grounding this kills spark.
If someone 'hotwired' this motor he may have connected 12V to this wire at the ignition switch and fried both switchboxes.
The ignition switch is actually two seperate switches within the one case. The ignition side simply connects the B/Y wire to the solid B ground wire to kill spark.
The remainder of the ignition switch handles the 12V system to power accy's.
While the B/Y is disconnected and your are checking for spark, also check that B/Y on the motor harness side for any voltage with the ign switch turned on and again off. ANY voltage found then replace the ignition switch with the correct new switch and repeat the test just to be sure.