Когда вы устанавливаете DockPanel.LastChildFill = true
Какой последний дочерний элемент вы добавляете?
Кнопка.
Не текстовое поле.
Порядок сверху (первый) и нижний (последний).
Я не уверен, какой именно результат вы хотите, но, возможно, вам просто нужно сделать текстовое поле последним потомком:
<DockPanel Margin="20,10,20,0" DockPanel.Dock="Top" >
<Button Content=" _Evaluate" IsDefault="True" HorizontalAlignment="Right" DockPanel.Dock="Right" />
<TextBox TextWrapping="Wrap" Text="{Binding Input}" Background="#FFE4EBFF" Margin="0,0,5,0" />
</DockPanel>