Correct, we special case the instances where the blur kernel is small enough that we can "ninepatch" the blurred rectangle, but when the blur is too large, this doesn't work either.
The reason we don't use an approximation approach is because we don't want to incur any visual popping should the rendering switch from GPU to CPU. While it's not an explicit goal to make the eventual renderings pixel-exact (an impossible goal with shifting precisions on GPUs), we are striving for perceptual equality, and we didn't feel that any approximations we had come up with (we tried several!) achieved this goal. To test, we just had a static rounded rectangle that was blurred with whatever approximation we were trying, and we would quickly flip back and forth between the analytic CPU solution and the GPU approximation. We never found one that didn't have a "pop".
That being said, we are absolutely open to trying new ones; if this one has that property I think we should look into incorporating it. Blur performance is still an issue for a few websites, despite the enormous improvements that Skia has made in the last two years.
Incidentally, your web page isn't quite accurate when it says that we compute shadows on the CPU and upload them; Skia computes shadows for rectangles directly per-pixel on the GPU an extremely efficient algorithm; each pixel is something like two texture lookups and a multiply. We even do something very efficient in the case where the blur kernel is wider than half of one of the rectangle's dimensions, by discretely computing a definite integral of a piecewise cubic approximation of the gaussian (again, all on the GPU).