Чего еще недостает - это создания экземпляра PriceDisc в стандарте через статический construct() вместо экземплярного new(): очень надеюсь, что это изменение также будет реализовано в рамках рефакторинга движка подбора цен.
PS. И чтобы new() при этом стал максимум protected, а то гхм... некоторые разработчики стандарта любят делать его private, как, с кажем, в SysLookupMultiSelectCtrl.
PPS. А сам класс чтоб не оказался final