Вы упоминаете, что свойства Font поддерживают это, поэтому я немного покопался в рефлекторе и нашел это интересным:
TextBlock
public static readonly DependencyProperty FontSizeProperty = DependencyProperty.RegisterCoreProperty(0x40003714, typeof(double));
Контроль
public static readonly DependencyProperty FontSizeProperty = DependencyProperty.RegisterCoreProperty(0x80003714, typeof(double));
Встроенный
public static readonly DependencyProperty FontSizeProperty = DependencyProperty.RegisterCoreProperty(0x3714, typeof(double));
Таким образом, все три из этих классов определяют FontSizeProperty, и используемый идентификатор выглядит очень похоже, как если бы этот первый бит был просто каким-то флагом. Так что, возможно, что-то происходит под покровом, которое позволяет то, что вы называете наследованием свойств, поскольку среда может передавать значения между этими похожими идентификаторами dp.