Windows bends over backwards to try to support old code. If you have something with Vista drivers there's a decent chance you can get it working in Windows 10, unless they were 32 bit only drivers. Even if you supply the source code (gasp shock! Unheard of!) you still end up chasing Kernel ABI changes from time to time.
For an example, I have an old Canon LiDE 35 scanner that I use from time to time. On Linux it just works as part of the huge SANE bundle. On Windows all I have are ancient 32 bit drivers that don't work on Windows 10, but if you download the Windows 7 x64 drivers for the LiDE 60 and hack some strings you can get it to work. A complete reversal in the amount of technical wizardry necessary to get it working over the course of about 10 years.
I expect Canonical or Lenovo or both to test all release candidates of all kernel versions after release and make sure that the hardware actually works, and if it doesn't, prevent the release of a broken Linux kernel version.
That would be the minimum level of QA acceptable for a "certified" laptop.
As a troubleshooting step, trying with the specific kernel version that was used for the certification might of course work.