This is not working as I expected. When I didn't provide a trustChallenge to the Two Factor Start API, I couldn't get the Change Password API to work. The message indicated that I needed to provide a trustToken, even though I was passing this into the API.
The workaround I found is that it worked when I provided a trustChallenge in the Two Factor Start API and the Change Password API.
This suggests that you have an integration error. My recommendation would be to turn on debug enabled for the SAML IdP in question and review the event logs for troubleshooting guidance.
You can't host assets in FusionAuth (like CSS or images). You must host those externally. This post might be useful to you: https://fusionauth.io/community/forum/topic/1306/parameterizing-themes
To offer a localization drop down, you need to build the select box in your theme or you can use the localSelector helper macro. This will iterate the supported locales for a theme and build the dropdown. Then, when it is changed, the page will forward to the same URL with a new locale parameter, which should render the page properly. More on the localization of themes here: https://fusionauth.io/docs/v1/tech/themes/localization
I'm not familiar with Material UI but if it is javascript, html and css, it should be workable.