I like to use what I call the leap frog in these situations. I submerge to get a sound fix on the target long enough to get an idea of his course. Then surface ahead flank speed on what I hope is a good course to catch up. I make frequent dives to get new sound fixes. Basically repeat this until I spot the target. Still running ahead flank I drive right up next to him on the surface and turn away to bring my stern tube to bear. One fish from the stern tube then hard around to bring my fore tubes to bear. Im usually within 300-500m when doing this so it doesnt matter if he spots me and goes evasive. The range is to short for it to matter.
Now of course, this will not work on armed ships and I havent tried it on a convoy. This technique works pretty well and is a lot easier than trying to get in a position ahead of him and hope he passes withing 500m which seems to be the limit of visibility in heavy fog.
Good hunting