So, let's not confuse the two....
The splash background image loaded earliest in the boot process (which you seem to be having trouble with) is loaded from the initrd or initamfs, or from the kernel itself.
The ones I'm having trouble with are loaded from theme directories in /etc/splash/$theme.
If you get a tux logo at boot, you're on the right track.
If you gan get the /etc/init.d/splash script to load a background, then you're further along.... you know your framebuffer works and you have a working theme.
At that point, you need to retrace your steps with creating the initrd and the command line parameters passed to the kernel at boot. This cost me a LOT of time, as the parameters, syntax and requirements changed from the old bootsplash stuff. I finally ended up compiling a version of the kernel with vesafb, vesafb-tng and finally savagefb (what I'm using), and then using grub's ability to edit the boot parameters, rebooted LOTS of times until I found something that works, which I have posted.
The biggest suprise to me was that I apparently have to include the theme name in the command line.
Another thing I would try and vary is the screen resolution and bit depth, as there seem to be (or have been) issues with these in the past.
fbset can help you figure out what you have.
I hope this helps..... I'm off to grep ebay for Exorcists.
Red