ALPHABLEND_BINARY is only used when the property TMT_GLYPHTRANSPARENT or TMT_TRANSPARENT is TRUE. Which theme part and state is the application trying to draw? If the theme part is not transparent then we should probably not set TMT_TRANSPARENT or TMT_GLYPHTRANSPARENT to TRUE.
This is from the default (light) theme, ScrollBar.ArrowBtn (blue_scrollbar_arrows.bmp). Removing Transparent attribute was my first thought (given the images which are actually transparent have alpha in the bmp and image transparency is used regardless of the theme attrubute) but there is a test which specifically checks that which is broken if doing so. Then, I could probably check the effect of just making all the theme images with alpha hoping that would improve this case too as blitting alpha-enabled bitmaps is probably not that catastrophic, but judged that maybe just handling it in the code avoiding just for any case (including non-Wine builtin theme) is a bit more interesting.
Is the listbox from Wine's comctl32? Can this be fixed in comctl32 instead?
Yes, it is comctl32 Wine listbox. There are already some criteria when the scroll box is not updated upon adding an item. The game's scroll bar configuration yields the redraw on each run. I didn't explore for sure if there is maybe something missing and in this specific case it shouldn't be updated too. But I concluded that the redraw time with default theme of ~2.5ms is so bad that it probably should be considered the core problem here; there are definitely cases when listbox's scrollbar should be updated and it looks more interesting reducing this time at this point.