st: Avoid integer overflow on unpremultiply
Usually borders are drawn on top the background, which means that if the latter is translucent, the effective border color will be different. However when the background color has a value of "transparent", the expectation is that there's effectively no background, which means the border color should be left unmodified. This came up in !297 (merged). I haven't found the relevant spec section, so keeping this as work-in-progress for now.
I found the real issue, see updated commit.