I think I found your problem....
Look in the file modules/new_products.php
at about line 40 there is a query defined for the variable $new_products_query that does NOT have a filter for products_status. Add a filter into that query so that it reads:
$new_products_query = "select distinct p.products_id, p.products_image, p.products_tax_class_id, pd.products_name,
p.products_date_added, p.products_price, p.products_type, p.master_categories_id
from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd
where p.products_id = pd.products_id
and p.products_status = 1
and pd.language_id = '" . (int)$_SESSION['languages_id'] . "'
and p.products_id in (" . $list_of_products . ")";
and save that as includes/modules/YOUR_TEMPLATE/new_products.php
Neville
An assumption is what you arrive at when you get tired of thinking...