I really think you need to flash stock on your P4a and test. I highly suspect you will find the problem remains. Sadly, at least in my opinion, there are just way too many gremlins in the VoLTE codebase and network negotiations to rely on documentation. Yes the OS does play a part, but I think it will be more productive to confirm via another OS if iodéOS has any issue or not. But digging into the code just to later find that it was not even relevant will be a long and complicated road.
If the bug exists in iodéOS only, then probably it is best to cross-check with LineageOS for microG to see if it works there. Then, if this behavior is the same as iodéOS (I would suspect that to match at least) we look to register the bug with the LineageOS team.