Да, в общем-то, просто.
В ТДС, через external_propertys передаете значение даты на день 15 (или 30) дней назад, в формате ГГГГММДД. Что-то типа
$now = time();
$period = 30;
$backdate = date(Ymd, mktime(0, 0, 0, date(m, $now), intval(date(d, $now)) - $period, date(Y, $now)));
$external_propertys['backdate'] = $backdate;
А в xsl для каждого элемента высчитываете его дату в таком же формате с помощью оператора concat
<xsl:variable name="add_date" select="concat(substring(datetime, 7, 4), substring(datetime, 4, 2), substring(datetime, 1, 2)" />
и после вычисления сравниваете полученное значение переменной со значением узла /shop/backdate, т.е с датой, переданной из ТДС. Если вычисленное значение больше переданного - то этот товар новинка.