@kocio: Actually, to achieve the same effect on riverbanks, it’s better to filter on the river (mean?) width than on the surface area size of individual segments. If a river gains width, you will still loose parts below the threshold (upstream parts only, that may be sub-pixel sized).
This would be tolerant to the actual mapping practice used and
will not cut out segments to display in a seemingly random way.
Obtaining width of a linearily shaped area may not be easy though,
but should not be harder than calculating the area size. As a fall-
back obtaining width by looking at the tags of the center line may
@kocio: If you’re just after filtering lakes, then why do you try to handle all water areas equally? It’s perfectly possible to handle riverbanks (that are more often linearily shaped than not) in a different way than lakes.
@imagico: Supporting your comment above, add that the water surface of rivers is most often not level / homogenous, as is for lakes. E.g. weirs, dams, mouths and alike separate surfaces of a watercourse naturally. If such elements are present, multipolygon riverbank split points need not be distributed arbitrarily.