Basicamente é isso mesmo. O Kernel é o responsável pelo reconhecimento do Hardware, a cada nova versão do Kernel, novos hardwares (ou antigos) são acrescentados ou retirados dele. Depende da versão (2.4 ou 2.6).
A equipe de desenvolvimento de cada distribuição pode fazer alterações no Kernel para melhorar o reconhecimento ou corrigir problemas detectados durtante as versões de teste.
Então mesmo que uma distribuição faça uso da mesma versão do Kernel, dificilmente será igual ao kernel original liberado no Kernel.org .
É como se o pessoal do Kernel.org liberasse um molde mestre onde os outros podem sair acrescentando ou retirando coisas conforme a sua necessidade.
Em linhas bem básicas e gerais seria isso! Espero ter ajudado.