The CO2 system you have envisioned will work
OK. I don't know how large your engine space is, but a 5-kg (11-lb) CO2 would probably be big enough. You can also get 6.8-kg (15-lb) and 9-kg (20-lb) aluminum
cylinder CO2 units.
Instead of trying to modify the discharge horn, they make a discharge nozzle for mounting in paint
lockers and other enclosed spaces. A fire extinguisher service
store should have them, or be able to get them for you.
A couple of other thoughts. With the proper plumbing
and a 2-position valve, you could use a single
CO2 tank to protect the 2 spaces. You would have to move the selector valve handle to the correct engineroom space (the one with the fire!) before discharging. You can then mount the tank in a central location (main salon
?) that is a safe distance away from the smoke and possible flames.
You could also use an aluminum
C02 tank with a "twist to open" valve as used for beer
kegs, paint guns
, etc. This has the advantage that you can just open the valve and walk away and the cylinder will discharge all of the CO2 without you having to hold a valve open. In the old days CO2 extinguishers use to have a metal clip that you could flip that would hold the handles together to allow for a "hands free discharge".
These types of systems are "manual", not fully automatic, and someone must be onboard to activate them.
Check with the people at SOTEC. They are a world wide fire protection company that are used to making up special extinguishing systems. There are lots of different ways to do what you want to do.
In the end, it may just be cheaper to install one of the pre-engineered fully automatic systems that are sold at marine
stores. They will definitely be faster to install.