This does sound like something where django.utils.formats.localize
could or should be used.
Here’s the ticket where this was reported before: #33112 (BaseValidator does not localize params passed to rendered ValidationError) – Django but this seemingly didn’t go anywhere because nobody followed up on it until now. (The change hasn’t been rejected by the way! It was a request for more information about it.)