Another thing I'll add, is in regards to your engine. Even though the SELOC manuals and OEM guides suggest 10 degrees BTDC for timing, keep in mind that that is for a brand new - off the line - engine, or at least a rather fresh engine with next to zero wear in it... Meaning, 10 degrees BTDC isn't accounting for stretch in the timing chain/timing gear wear, pushrod and lifter wear, cam lube wear, rocker arm wear, and all else that ends up causing the timing to actually need a little more advance than OEM original spec. Usually needing a couple, to a few, more degrees of advance than listed in the original manuals/oem specs to account for the wear of the engine and components.
This is ESPECIALLY true for Marine Engines, and other high utility use motors like in Tow trucks, RV's, and other high torque application use. In a boat, any time the vessel is underway, there is full load/strain being put on the engine full time. Unlike a truck, car, or other land vehicle where there's coasting, varying degrees of load through acceleration and cruise on flat surfaces coasting down hills and etc (which is why highway miles are easier in a car) a boat engine is under full load at all times the vessel is moving, like its climbing up a hill nonstop.
Think of a truck with a trailer behind it going uphill. That engine is taking the full brunt of that load to keep pushing the weight uphill. That's what it's like for our marine engines anytime our boat is moving at all. Thus, the timing chains/gears and all else that is within the engine that gets rather used on anything past a couple hundred hours, more often than not ends up requiring a tad more initial advance than normal (by a couple, to a few, degrees more than OEM spec).
The reason I bring this up, is because that can have an impact on your idle not being able to hold steady on lower RPMS, because when you think there spark is igniting per intended, (because you have it set at OEM spec) it's actually a little delayed than OEM spec actually intends. This results in subpar idling at regularly low RPMs in addition to the carb issues that can cause it as well. Not saying this is your problem, but just something to keep in mind and for others that see this in the future to be aware of.
I had this EXACT issue on my SBC 350 as well as my BBC 454. I kept having a rough idle around 650 to 850, but around 875 and up, it purred like a kitten. Just ended up being that because I had around 300hrs on the 350 and around 1100hrs on the 454, I ended up having to advance my initial/base timing to around 14 BTDC on the 454 (up 4deg from Mercruiser's 10 degrees) and had the 350 at 11 BTDC (up 3deg from Volvo Penta's 8 degrees). All because those timing specs are based on engines with little to no wear within the cam, valvetrain, and related components and pieces that makeup the crucial flame/ignition timing.
Sorry for the book, just figured I'd offer the info in the rare case that this may help you out like it did me.