For anyone that finds this in future. I had started using the noble-chisled containers from MCR when I first encountered this.
Setting the values in project settings did nothing, but I didn't have the issue with the runtime:8.0 base image. So I went hunting for what was missing in the chisled container.
Turns out they started releasing "extra" container images which has globalisation enabled.
mcr.microsoft.com/dotnet/runtime:8.0 >> working
mcr.microsoft.com/dotnet/runtime:8.0-noble-chiseled >> not working.
mcr.microsoft.com/dotnet/runtime:8.0-noble-chiseled-extra >> wokring.