My DNN configuration is set to handle two languages: EN-US, PL-PL.
On ProductList display template everything works fine. URL on products is generated with .../pl-pl/... when language is set to PL.
On Cart and Checkout display templates the same product always gets .../en-us/... Selected language doesn't matter.