Ionic HTMLAudioElement can’t change volume on IOS

I have a custom player for audio using web api.
Everything works perfectly, on web, on Android, but on IOS.
Actually everything on IOS works BUT volume change.
The method to change volume is completely standard, I pass a number between 0.0 and 1.0 and set the volume property with that value, but it seems like capacitor on IOS just don’t register it, the DOM element register the change, I can read it by the property, but the change by itself doesn’t trigger the event “volumechange”.
Has anybody encountered this issue and got a workaround?
I am on capacitor3.

// init audio
this.audio = new Audio();
// ...
// etc

// property changes, but real volume doesn't change on IOS, it changes on android and on web app
setVolume(volume: number) {
    this.audio.volume = volume;
}

// it returns the value I set on IOS
getVolume(volume: number) {
    return this.audio.volume;
}

// doesn't trigger on IOS, triggers on android and on web app
this.audio.addEventListener('volumechange', (e) => {
    console.log('Volume Changed!');
})