Powerstates are weird in Linux; usually don't change if you issue the command to change them. I suspect this particular driver disallows nvidia-settings control over them.
Also you will need to use a higher OC offset to match the results from windows; as the OC curve is different in linux.
It seems like the power state will not change if the miner is running since the value is locked while in use by the miner, probably because the xserver p-state setting is initialized when linux loads but the miner changes the p-state settings after that which resets the values overriding the o/s default settings. Once that's done, you have to stop the miner, reset the p-state in nvidia config panel and then run the miner again... but the problem is that oneBash changes the setting back when it loads. I've tested setting the cards individually to 'prefer max performance' in nvidia's control panel while miner is running. P-state doesn't change. As soon as the miner, is closed the p-state will go up to max settings as you'd expect.
One way I think you could avoid this is by not setting power states in oneBash, but rather set them manually in the nvidia xserver settings so they are in place before oneBash runs. I'm sure there's a way to automate the P-state through nvidia xserver config file, but I'd have to dig around to find out how precisely to do it. That also means you'd have to remove the p-state config from the oneBash options to avoid it being changed back by the miner script.
In my tests different GPUs had different levels of responsiveness to the power state cmds. Maybe the new driver will work better overall.
There is no explict power state implementation in oneBash; if it is changed it is due to internal workings of the nvidia api when either OC or powerlimit is applied. It is possible that adding power state cmds before the launching of the mining client, but after the powerlimit and OC will work.