I found a very strange thing in Magento 1.8. If the shipping address is the same as the billing address, shipping method and discount label show correctly in invoice and new order email. But if the shipping address is different from the billing address, shipping method and discount label show blank in invoice and new order email.
See examples here: http://i58.tinypic.com/fy3jg0.jpg and http://i57.tinypic.com/2afcwte.jpg