Starting the service as early as the 'local-fs' target doesn't always work, if the framebuffer is not initialized, then you can't display anything. For the Pi4, the display is re-initialized when the KMS/DRM framebuffer emulation is loaded, so any images shown before that will simply be erased.
You can try using the modifying the existing asplashscreen service (defined in /etc/systemd/system/asplashscreen.service) and see if changing the dependencies will make it start earlier, but the result might not be what you want.