DTCPing tool says everything should be fine. The actual exception is:
System.Transactions.TransactionManagerCommunicationException:
Communication with the underlying transaction manager has failed. ---> System.Runtime.InteropServices.COMException: The MSDTC transaction manager was unable to push the transaction to the destination transaction manager due to communication problems. Possible causes are: a firewall is present and it doesn't have an exception for the MSDTC process, the two machines cannot find each other by their NetBIOS names, or the support for network transactions is not enabled for one of the two transaction managers. (Exception from HRESULT: 0x8004D02A)
The service runs on a VM. Other servers are able to run distributed transactions, so DB box is configured properly.