When I use importmulti with an xprv it never imports the private keys. What am I doing wrong?
You aren't doing anything wrong. This behavior is expected for Bitcoin Core 0.18. The Pull Request allowing private keys to be derived from descriptors and imported with importmulti was merged recently. This functionality will be included in Bitcoin Core 0.19.