Until browser implementors fix their accessibility support, if you want controls to be understandable to AT users label controls using for and id. Do not use the control inside the label method. Do not use a combination of the 2 methods.
If you look at the tables though, in both cases that use ARIA labelled-by attributes, there are problems. In the first table Chrome has problems with it, regardless of wrapping. In the second table Chrome again has the same problems, but VoiceOver with Safari has problems with labelled-by and wrapping, whereas VoiceOver with Opera has problems with labelled-by and no wrapping.
That makes it 2-2, and if Chrome fixes its support that would weigh in favour of wrapping and a labelled-by attribute. I think the advice is poor, and as such, I’ve ignored it for the Campo projecthttps://rubygems.org/gems/campo. All labels wrap, and all labels get ARIA labelled-by as default.