1) Добавили в запрос объединение с модификациями:
$Shop_Controller_Show->shopItems()
->queryBuilder()
->select(array(Core_QueryBuilder::expression($query_currency_switch), 'absolute_price'))
->leftJoin('shop_item_discounts', 'shop_items.id', '=', 'shop_item_discounts.shop_item_id')
// добавлено
->leftJoin(array('shop_items', 'modifications'), 'modifications.modification_id', '=', 'shop_items.id')
...
2) В расчете absolute_price ($query_currency_switch) строка
`shop_items`.`price` заменена на
MIN(`modifications`.`price`)
Также у вас из XSL-шаблона исключена явно указанная сортировка.