Intermittent spark problems are really very hard to diagnose but not impossible. But it'll sure take a lot of time to diagnose it accordingly. As previously mentioned, switch the coil with another known good working coil, i.e. #2. Keep the coil switched and then do your normal running. If the problem arises (weakening sparks) did it stayed with #1 or did it moved to #2. Obviously, if it moved to #2 then the coil is the problem. If it stayed with #1, then the coil is NOT the problem. Instead it could be the CDM or the trigger.
Next, switch the CDM. Note since this is a 3 cylinder motor, #1 CDM feeds #1 and #2 coils while the #2 CDM only feeds #3 coil and the other CDM circuit is a spare. You need to physically switch the CDM's instead of just the wiring. This is with the assumption the spare circuit on #2 CDM is a working one.
Note again, since you will only be using one CDM circuit (when moved to #2 CDM position to feed #3 coil) on the previously #1 CDM and the suspected problem is with the #1 CDM circuit (previously feeding #1 coil), use the #1 circuit to feed #3 coil. In this manner if the problem arises again and it moves to #3 then you know the problem is the #1 CDM circuit. If this is the case, no need to get a new CDM yet, instead use the spare CDM circuit.
However, if the problem arises and it stayed on #1 after the CDM switched, then it is obvious the problem is with the trigger or magnets.