Actually, Facebook seems to ignore the Accept-Language header, as do several other major sites (Google, Skype, and probably others). I don't know why they choose IP geolocation over the Accept-Language header. It's possible that the header is sometimes set incorrectly, but I'm guessing it's acceptable more often than geolocation is. However, with many major players operating the same way, it's not likely that Facebook will change.
Actually, Facebook seems to ignore the Accept-Language header, as do several other major sites (Google, Skype, and probably others). I don't know why they choose IP geolocation over the Accept-Language header. It's possible that the header is sometimes set incorrectly, but I'm guessing it's acceptable more often than geolocation is. However, with many major players operating the same way, it's not likely that Facebook will change.