Esme Povirk (@madewokherd) commented about dlls/sane.ds/ds_ctrl.c:
{ BOOL rc; activeDS.currentState = 5; /* Transitions to state 5 */
activeDS.capIndicators = TRUE; /* Twain spec says to ignore CAP_INDICATORS if UI is shown */
As I read the spec, the process and error UI is shown if UI is shown, regardless of the value of CAP_INDICATORS, but the UI being shown does not affect the value of CAP_INDICATORS.