I am considering and struggling this question for months, and so exciting to find this thread, especially I owned a same Mazda CX-5.
My currently dash cam is an Roav C1 pro, with same shape and similar dimension of Viofo A129. To make the lens closer to center but avoid the sensor housing invade into the camera view, I mounted the camera on the lower left side position, making it unconcealed to the passenger and outside as picture 1. The only good things is the camera is totally behind the rear view mirror, which mean no visual field lost as picture 2.
Actually Mazda's windshield sensor is asymmetry and is off to the passenger side. You can find it from picture 3. I think after I replace my current dash cam with an A129, I would prefer to mount it to the left windshield (driver side) frit, so that the lens will more center alignment than to the right (passenger side). Now I am using a yellow post note sticker to test how much of the view field will be eaten by the A129.
I also did a no sense comparison between thinkware U1000 and viofo A129 about their wiring and mounting lock direction. To lock the camera to the mount, you will need slide from left to right for U1000, and right to left for A129. For me that's the only advantage for U1000 because I can center-align the U1000 even touch the sensor housing after lock on to the mount, but have to leave space for A129. Another choice is mounting a blackvue DR dash cam beneath the sensor housing- even better location. But in my opinion, the A129 beaten the blackvue and thinkware at all other merits.
And one more thing to clarify, it shouldn't be so much necessary for center-alignment, it just my OCD to trying to make my car cabin clean and tidy.
View attachment 50403 View attachment 50404 View attachment 50406