Um BIOS precisaria saber como carregar um kernel, e isso tornaria o BIOS excessivamente complicado: imagine um BIOS que precisa saber como carregar os diferentes sistemas operacionais disponíveis, como passar parâmetros de kernel para eles, etc. ..
Assim, apenas inicializa o hardware e salta para um local conhecido onde o bootloader é armazenado; então, o controle é passado para ele.
De O Unix e Fundamentos da Internet HOWTO :
You may wonder why the BIOS doesn't load the kernel directly — why the two-step process with the boot loader? Well, the BIOS isn't very smart. In fact it's very stupid, and Linux doesn't use it at all after boot time. It was originally written for primitive 8-bit PCs with tiny disks, and literally can't access enough of the disk to load the kernel directly. The boot loader step also lets you start one of several operating systems off different places on your disk, in the unlikely event that Unix isn't good enough for you.
Quanto ao BIOS ser o primeiro programa executado: (de Wikipedia )
The BIOS software is built into the PC, and is the first code run by a PC when powered on ('boot firmware').
Mas um firmware é software. Então, eu diria que o manual do GRUB é pelo menos confuso nessa parte; o bootloader pode ser visto como o primeiro software definido pelo usuário que é executado no computador.