I have a scroller showing a collection of products currently on sale, which I call using the following:
$todayDate = Mage::app()->getLocale()->date()->
My colleague recommended using this Magento friendly method to get the price html anywhere:
load($product->getId());
$productBlock = $this->getLayout()->createBlock('catalog/product_price');
echo $productBlock->getPriceHtml($_product); ?>
If you're already working with a loaded product then you won't need the first line, however my product was from a collection so this was necessary.