I’m curious about your statement “…when I upload this Dashboard to the PowerBI service the DAX has been altered.” In what way is the DAX altered and how do you know?
I had issues doing Power BI reporting against a Dataverse data source where multi-choice columns were defined in the database. When using the OAuth API to connect, those columns returned crazy stuff like a long sequence of numbers. I switched to the (new at the time) Dataverse data source provider, and most of the issues went away, such that I got the selected value in the column. However, not all of the issues went away.
My understanding is that there is some kind of translation of the multi-choice value fields going on in the data source provider, and if A) the provider understands the source’s multi-choice column data and B) the column is actually defined and populated the way it is supposed to be, then you get back the values you expect. Anything out of sorts and you get a non-useful value back.
My educated guess with your scenario is that you have the required data provider or provider version on your machine where Power BI Desktop is running, and the Power BI service does not (or at least doesn’t understand the data source).