I think the torps exploding prematurely was bad luck. I've had a number of duds, but never all of them.
As for destroyers without pinging, they often do that. Also in a cinvoy attack, the nearest one will come pretty fast to the location from which you fired your torpedoes (unless they've spotted you periscope as you looked for targets).
I calculate that one has 3 minutes from the moment the scope comes up 'til an escort is on top of you. (assuming the nearest DD is 2,000 meters from your attack location.
My standard procedure is: quickly find a target, launch two torps at a fat target. Then launch two torps at two different targets. Flank speed and order new depth of 180 meters, down scope.
After 30 seconds, I order slow ahead. This gives me another 30 seconds of high speed but quiet running and I order rudder 5 degrees. By now approximately 2 minutes have elapsed. An escort doing 15 knots will have covered 800 meters toward my last know position. Chances are it will have a hard time pinpointing my exact position.
Here I reduce speed to 2 knots and I should have a depth of over 60 meters.
When the escort is overhead dropping DCs, I can get away by going flank and rudder amidships while I'm in the escort's baffles. Once I reach 6 knots I order 2 knots.
So far, this has worked for me.