I'm pretty sure the marine mechanic has succeeded in making the diagnose pretty accurate, since doing a spark test is peanuts, even without special equipment.
But even so; that still leaves both the CDI-unit as well as the stator suspect.
(the stator can have one or more defective coils, causing intermittent/ no spark on one or more cylinders)
Doing Peak Voltage tests on both parts can get you in the right direction, but even then, you can't be 100% sure.
This is assuming it's a 2 stroke, never worked on a fourstroke myself, so i'll leave that to the experts...
"Only the dead have seen the end of boating.."