Unlike SMW (and presumably SMB3), the tables are set when the sprite is spawned and don't need to be manually initialised after you found the sprite slot. This is probably where your problem is coming from. Check the routine at $03A364 (or spawn_sprite in the newer disassembly) to see which values are initialised.
Do also note that there is no shared OAM property sprite table unlike SMW's $15F6
– the x and y flip are stored at $701000
(though there also is a facing direction table
in both, X and Y direction and they affect the X and Y flip too) and $15F6 also contains the palette but the priority and tile number (including the MSB aka page number) is set (the OAM table also contains the size and individual X and Y flip).
fixed broken links