It doesn't work because the shadow occupies *the entire area behind the text* and not just *the area around the edges*. So you end up just seing the shadow color filling the entire text, which is equivalent to filling the text with the stroke color. Presuming the background is white is the best we can do, it's going to work 80% of the time.