Cant get my compositing to layer my objects quite right
The cause of this issue is the add node just before the final composite node. The node is simply adding the values of the pixels regardless of which is on top. A better way to do it would be to use the Alpha over node, although it's unclear from the images you posted if the render layers with the ships and water have any alpha information. Alternatively, you could set the node to mix instead of add, and then use the object index passes as the factor for the mix node.