I think the ability to capture Live Photos using UIImagePickerController is broken. In fact, if you print the value of mediaTypes immediately after the line where you assign it the values [UTType.image.identifier, UTType.livePhoto.identifier], you will find the print output to be only ["public.image"], when it should be ["public.image", "com.apple.live-photo"]. UIImagePickerController seems to immediately and deliberately prevent UTType.livePhoto.identifier from being set on mediaTypes.
UIImagePickerController.availableMediaTypes(for: .camera) is also missing the value "com.apple.live-photo". Even though the device I tested on supports Live Photos (iPhone 12 Pro) and the system Camera app allows me to capture Live Photos.
There are a few possible explanations here:
This used to work when it was first introduced back in iOS 10 and broke sometime after, so it's a bug.
It was silently removed without a deprecation notice.
It was never meant to work when using the camera source type and the documentation is simply wrong and confusing.
I hope we get some explanation from Apple about this. For the time being I have created a feedback for it (FB12191966).