I have a scroller showing a collection of products currently on sale, which I call using the following:
$todayDate = Mage::app()->getLocale()->date()->
To get getPriceHtml() function work correctly in your custom block you need 2 things
1)Make your block type catalog/product
2)Pass the product object to getPriceHtml() function
load($_product->getId());?> getPriceHtml($productObject, true) ?>