No. Using the initrd separates/eliminates that restriction.
The only requirement is that the ZFS module must exist in the initrd.
The only filesystem mandatory in the kernel (with the initrd) is the one for a RAMFS, as that is what the initrd (a compressed cpio file) is put into, then that is used for the root filesystem while hardware and partition inventory is completed.
Only modules available for the hardware (and filesystems needed) will be loaded.
Thus the ZFS module would be loaded from the initrd, then the real root filesystem mounted... and the system uses "pivot_root" to exchange the real root for the RAMFS, which can then be dismounted and deallocated.
What MIGHT be a problem is for grub to be able to load the kernel and initrd from a ZFS based filesystem.