There might be a problem with the TMS TaskDialog component. I'm looking at The TAdvTaskDialog class where we set the hwndParent property in the function Execute. Setting it to Application.Handle will make the dialog to always pop in the main screen when you are working with 2 monitors.
I checked the code in Vcl.Dialogs and they use Screen.ActiveForm.Handle instead. I think the TAdvTaskDialog component should use it unless there is a very special reason not to.
Another workaround would be to to set the property NonNativeDialog to nndAlways but it's not an option when you want to enable Delphi Vcl Themes.
Does anyone have any other idea ?