Это имеет смысл. Если вы рассматриваете UserControl как черный ящик, то вы не должны знать, какие на нем элементы управления и, следовательно, источник события.
Если вам нужно различать разные кнопки в UserControl, тогда UserControl должен иметь свои собственные события, которые срабатывают кнопки. Таким образом, со стороны это выглядит как правильное событие, и пользователь UserControl не должен знать, какая кнопка сделала какое событие.
Чтобы привести пример, в списке необходимо знать, что кнопка прокрутки вниз была кнопкой, которая отправила исходное событие? Или вам просто нужно знать, что произошло событие прокрутки вниз.