Only in case someone ever stumbles on this thread, despite of being 'solved', I have taken new confidence into the matter and explored further possible reasons for the scan failure: tvheadend seems unable to discard muxes inserted through pre-defined lists. In my case, it had a wrongly configured 370 MHz mux, because it had been passed a 370 MHz mux from the predefined list with wrong parameters (see above), and a 370 MHz mux supplied 'freshly' from the cable network. It simply stumbled across its own feet by contradictory parameters.
I manually compared the list of muxes of w_scan with the muxes found on my pre-defined list (51 altogether), deleted those not found by w_scan 828 left), and - eureka! - suddenly the scan went through smoothly and quickly.
So far nobody was able to convince me that this would NOT be a bug!
Maybe not quite correctly formulated in the title, though a time-out might still be useful, but one step seemingly missing: using the predefined list (okay), contacting some muxes from the provider (correct), deleting those that are not available, respectively have contradictory parameters (missing).
To me the method proposed by Jonas further up seems most adequate, in principle, if ever anyone would care to resolve this bug: find an 'access' to the provider network, get a minimal number of working muxes (one?), and then discard anything else.
Or, make w_scan a library, ask the user for network type and country, and produce a list of active muxes, and start scanning then.