Am I missing something, or is there a reason the trigger doesn't seem to work below 300mV?
Yes, it's reproducible. Appears to be a bug or maybe there's a valid reason because of they way it's implemented.
In fact, if I reduce the vertical to 5V/div it won't trigger below 1.1V...
It looks like it's not an absolute value, but some percentage of range and/or displayed values. Try to zoom in instead without changing the source signal: with the 0..3V square wave, if you zoom in to 200 mV/div or below, it will happily trigger when the trigger level is set to the lowest possible -- down to the noise at the lower portion of the cycle.
It doesn't seem to depend on absolute values. It triggers fine with the lowest possible values when vertical scale is set so that the waveform doesn't fit on the screen vertically. Once it fits, then triggering below a certain percentage of amplitude doesn't work.
Sounds well like a bug to me.
Update: it not only has to be zoomed in to not allow the waveform to fit vertically, but it has to be above a certain level outside the screen too. With a 0..3V square wave, zoom in to 200 mV/div, set trigger to 30 mV, it should be triggering fine. Now press the vertical scale encoder (enable fine zoom) and start to zoom out. It will begin to fail triggering at 220 mV/div with the upper portion of the waveform still well outside of the visible display area.