when using ImportFiles you replace the whole file with yours, while ReplaceUIScript allows you to include the original file you replace at the beginning of your (for example to just overwrite a function of that file)
There are pro and con, I use ReplaceUIScript for minimal changes (or additions without modification of original functions), when I know that in most case an update of the original file will not affect those changes and ImportFiles for bigger modifications of the original functions, when updates of the original files will surely affect my code and then a 3-way merge will be easier.