You need to use a different instance method of MKMapItem called openInMaps(launchOptions:from:completionHandler:).
This method allows you to pass in the CarPlay scene as an argument. This will have Maps open in CarPlay and not on the phone.
Topic:
App & System Services
SubTopic:
Maps & Location
Tags: