Did a dual language site back before we had Persona support so cannot advise directly on that. It might be difficult to create a Persona based on the accept language header given you need to parse it, not sure if that is native to Personas whereas it definitely is for contexts: https://matrix.squiz.net/manuals/contexts/chapters/context-configuration-screen
I believe at the time I looked into it I decided to not use contexts as it was an instance wide setting when we only needed it on one (relatively small) site, it had caching implications, and added editorial complexity. It was easier in my instance to just duplicate the content (/en and /fr roots). YMMV
Each language root used a separate design customisation with any language specific elements customised.
I also added a language switcher on each page to its equivalent, which was just a hyperlink to a Related asset metadata. This wasn’t a chore as the site was small, on a larger site I would simply link to the other language root.