When forced redirection is on then it is made before user is checked - it is because it works for first request - before user is logged in. We are not able to see user default language if user is not logged yet, because he is acting like a guest then.
Forced redirection works according to user browser settings. So you can turn off forced redirection or ask this user to change browser language settings. Also redirection takes place only at the beginning - after first request user can go wherever he wants.
This is not a bug - it just works this way.