Hate to say this because I don't want to make your mood any worse but...
If you hit a ship but it does not sink, you will not recieve credit when the ship later sinks in rough seas. SH3's engine is a bit prejudiced about this, even though the huge hole in the ship and the fact that it's listing heavily were the reason that it succumbed to the waves.
Better to "waste" an extra torpedo and get credit than to lose a single torpedo and recieve no credit at all.