Okay, my tests indicate that systemd-boot doesn't work yet. On btrfs subvolumes it falls to detect the root right, and on plain ext4... It seems work, config files look right to and there are right menuentries in the menu, but initramfs fails to mount the root.
EDIT: the problem was that the initramfs could not detect filesystems on the removable device, even though the bootloader did. The same thing happened with refind occasionally. Disabling autodetect, effectively making all initramfses fallback ones, fixes this.
Oddly enough, there is no such issue with grub, and refind also worked on its own if it was installed beside grub, in a situation where it otherwise would not have. Grub does behind the scenes something that other options do not.
Anyway, I set refind and systemd-boot functions to disable autodetect hook if they are installed on a removable device. That should work on removable device better anyway, if you are moving between computers. It might also make sense to disable the creation of fallback images in this case to save time and space. But that would be messy and would not apply to new kernels.