Hi,
I hope it's ok to post the following test case to get your opinion.
It's about filter/arithmetic. I don't get the same result in inkscape and in squiggle (and for me both look wrong)
final filter in inkscape (0.48.3) "does nothing" the result looks 99% like the initial background
squiggle is better you see the diagonal but not all pixels are black
I expected every pixel at the top right above the diagonal in final image would be black (as in the included png)
because in the top right r image (=g image =b image) > r background
so lighter (image,background) = image
so k2 * lighter (image,background) + k3 * image with k2 = 1 and k3 = -1
= lighter (image,background) - image
= image - image
= 0
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="1.1"
width="210mm"
height="297mm"
id="svg2"
style="enable-background:new">
<defs
id="defs4">
<marker
refX="0"
refY="0"
orient="auto"
id="Arrow1Lstart"
style="overflow:visible">
<path
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
transform="matrix(0.8,0,0,0.8,10,0)"
id="path3998"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" />
</marker>
<linearGradient
id="linearGradient3825">
<stop
id="stop3827"
style="stop-color:#000000;stop-opacity:1"
offset="0" />
<stop
id="stop3829"
style="stop-color:#fcfcfc;stop-opacity:1"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3803">
<stop
id="stop3805"
style="stop-color:#000000;stop-opacity:1"
offset="0" />
<stop
id="stop3807"
style="stop-color:#ffffff;stop-opacity:1"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3789">
<stop
id="stop3791"
style="stop-color:#00a3a3;stop-opacity:1"
offset="0" />
<stop
id="stop3793"
style="stop-color:#eb2e2e;stop-opacity:1"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3782">
<stop
id="stop3784"
style="stop-color:#000000;stop-opacity:1"
offset="0" />
<stop
id="stop3786"
style="stop-color:#ffffff;stop-opacity:0"
offset="1" />
</linearGradient>
<filter
color-interpolation-filters="sRGB"
id="filter3852">
<feBlend
in2="BackgroundImage"
mode="lighten"
result="result1"
id="feBlend3854" />
</filter>
<linearGradient
x1="1.4285808"
y1="523.79077"
x2="-11.428548"
y2="1038.0765"
id="linearGradient3891"
xlink:href="#linearGradient3803"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.16470586,0,0,0.27184464,229.14324,-76.018811)" />
<linearGradient
x1="-152.73392"
y1="1049.4775"
x2="121.55181"
y2="768.04895"
id="linearGradient3912"
xlink:href="#linearGradient3825"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.56000038,0,0,0.53846205,104.56851,-359.58241)" />
<linearGradient
x1="-152.73392"
y1="1049.4775"
x2="121.55181"
y2="768.04895"
id="linearGradient4520"
xlink:href="#linearGradient3825"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.56000038,0,0,0.53846205,455.96089,-153.00324)" />
<linearGradient
x1="1.4285808"
y1="523.79077"
x2="-11.428548"
y2="1038.0765"
id="linearGradient4541"
xlink:href="#linearGradient3803"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.16470586,0,0,0.27184464,399.2299,120.53231)" />
<filter
color-interpolation-filters="sRGB"
id="filter4543">
<feBlend
in2="BackgroundImage"
mode="lighten"
result="result1"
id="feBlend4545" />
<feComposite
in2="SourceGraphic"
operator="arithmetic"
k1="0"
k2="1"
k3="-1"
k4="0"
result="result3"
id="feComposite4547" />
</filter>
<linearGradient
x1="-152.73392"
y1="1049.4775"
x2="121.55181"
y2="768.04895"
id="linearGradient4633"
xlink:href="#linearGradient3825"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.56000038,0,0,0.53846205,450.57867,88.274736)" />
<linearGradient
x1="1.4285808"
y1="523.79077"
x2="-11.428548"
y2="1038.0765"
id="linearGradient4654"
xlink:href="#linearGradient3803"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.16470586,0,0,0.27184464,393.42895,361.83833)" />
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<text
x="12.380551"
y="23.27586"
id="text3864"
xml:space="preserve"
style="font-size:25.86087418px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="12.380551"
y="23.27586"
id="tspan3866">Foreground</tspan></text>
<text
x="201.89806"
y="28.043221"
id="text3868"
xml:space="preserve"
style="font-size:26.65829849px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="201.89806"
y="28.043221"
id="tspan3870">background</tspan></text>
<rect
width="159.99998"
height="159.99998"
x="197.14323"
y="60.933994"
id="rect3889"
style="fill:url(#linearGradient3891);fill-opacity:1;stroke:#000000;stroke-width:0.002116;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
<rect
width="160.00011"
height="160.00015"
x="15.837464"
y="50.905853"
id="rect3910"
style="fill:url(#linearGradient3912);fill-opacity:1;stroke:#000000;stroke-width:0.00549126;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
<text
x="416.18378"
y="243.75751"
id="text3926"
xml:space="preserve"
style="font-size:26.65829849px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="416.18378"
y="243.75751"
id="tspan3928">result</tspan></text>
<text
x="131.42857"
y="279.50504"
id="text3946"
xml:space="preserve"
style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="131.42857"
y="279.50504"
id="tspan3948">Lighter</tspan></text>
<path
d="M 361.18412,307.15363 C 179.92756,210.18279 179.92756,210.18279 179.92756,210.18279"
id="path3992"
style="fill:none;stroke:#000000;stroke-width:1.17201114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart)" />
<rect
width="159.99998"
height="159.99998"
x="367.22989"
y="257.48514"
id="rect4539"
style="fill:url(#linearGradient4541);fill-opacity:1;stroke:#000000;stroke-width:0.002116;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
<rect
width="160.00011"
height="160.00015"
x="367.22983"
y="257.48505"
id="rect4518"
style="fill:url(#linearGradient4520);fill-opacity:1;stroke:#000000;stroke-width:0.00549126;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;filter:url(#filter3852)" />
<path
d="M 360,292.36218 C 271.05893,198.07647 271.05893,198.07647 271.05893,198.07647"
id="path4568"
style="fill:none;stroke:#000000;stroke-width:0.80954015px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart)" />
<text
x="32.857143"
y="508.07642"
id="text4570"
xml:space="preserve"
style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="32.857143"
y="508.07642"
id="tspan4572">Arithmetic</tspan></text>
<path
d="M 327.05686,576.56189 C 147.67542,435.65073 354.98058,392.72 355.8003,411.73391"
id="path4587"
style="fill:none;stroke:#000000;stroke-width:1.17201114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart)" />
<path
d="M 297.78151,578.71513 C 64.36134,213.86639 64.36134,213.86639 64.36134,213.86639"
id="path4602"
style="fill:none;stroke:#000000;stroke-width:2.57982302px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart)" />
<text
x="255.77797"
y="425.70889"
id="text4604"
xml:space="preserve"
style="font-size:34.79435349px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="255.77797"
y="425.70889"
id="tspan4606">*1</tspan></text>
<text
x="153.17693"
y="438.31036"
id="text4608"
xml:space="preserve"
style="font-size:26.20664597px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="153.17693"
y="438.31036"
id="tspan4610">*-1</tspan></text>
<rect
width="159.99998"
height="159.99998"
x="361.42892"
y="498.79114"
id="rect4652"
style="fill:url(#linearGradient4654);fill-opacity:1;stroke:#000000;stroke-width:0.002116;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
<image
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAABBxJREFU
eJztWmFzwyAIRYO2///vbuo+4aFRRNvMtSt3vUVrDO/5QGJnjDHJGANkKSWoLaUEfEyvj5v0Xe/7
3j0rc2nuAwAwAHBGrJyoRdarmTHGvD6KSePqtZt92WJc0f+SAG4fAnY7sNs+BOx2YLd9CNjtwG77
ELDbgd32IWC3A7vtQ8BuB3bbh4DdDuy2f0/A6UhMc472ToaICCml/CGj63cnBL33AAAQY4QQAsQY
M3hOyrsSgYgIx3FACAFSSpkETkatjnciA733gIgZMIHnZPDPu5GBzjlwzhWgayW02jUZr0oEOufg
fr+fFMBXvUVGrRCeN8hegRR0zoH3HkIIxeq2iOj11f2vRAY65+B2u8H393cGvwq81V8n0b9GRCag
ToSjZDhDSE0GwN8holDADBgNeImkvxImOQccxyGuugSch8+MOlqF12+TkXcBUsCK3BGxO36G0JYy
riYiK8Bam1ejVwPM7AJSHcHvSyllBUnb61VkoPcebrdbDoFamtwprTpCCHk+CTwf2yvD+T3cnqWQ
ggAJICeIrywfo9kSRyBHiZOHCSdilYxTCMw4stLfI0O6t5VXeIg8UmvkJPj19dVkWpsPZgBp8oj0
DtIaVxOiJSIrwBhTPEDzQqRxcoZQCWivLc2hOeDJhRDPAdq4pwzOt8FWPhhVk6N3kEeKr1HOyARQ
DphdEV5CU7sl01apLQFcyTXauXnOKJLgIzGrAbTa98jY0TbcVMCz5HgVSKpJpAqU97VC+UQAT4Ij
ZzQkzcT9VSRp7j8pIMbYTWzPdPIKJa2EbKGA3NlIZDOANOXvaE7aYVYI6j2/tQ0XdcDK6lyVtFqx
u0JSDZp2I+ofboOzYJ6hDg1wngjrLbe32s1tnF6GuAIeXcWVsT1He2T26orZugERsdgFpHdzreO8
PVrxlVUbFUI9xbW+LxTA5Sc53gPY+o52FA1JvedriG4BlxSUk6D3HvgPpDMrMyIpxng67JBIajkp
xb205UnnlEUSvN/vpxywkvRW5MvjWXKS2hrgEknU5mPRWluEwKMvINqxLWc0hGtImlnIIgmO5NcD
OAtGWsWVnWO1L8Z4zgF1fFI89WJUe6ixuuKr6tASko/EWnUAJRLpXb4e2yNJA+YZYTGrhFwK04P5
imqTDo29SqpXqgOttXAcR7HKAJBLYyqQuEI4IfVpMv93G/7wEZkziXYG+GgsGmPAWgvGGDiOI5+X
ETh+fGSMKQomavPDRvrLx/OzOOoPIRTkEdH1wUzrN8ve4a0EvPfihNZaIBUQMAJCbVIFOV1fU7s3
lgit+6mvHsPnbM3Bx9E1kV1/OFgiuVAAPaB2qgdkBkDdHvU/OlY7H8eDdME7R04826nftNPvAnQh
ETAz4czPUnXe0MzB5T0zB7UpUdMcP/B0mch1Dn4EAAAAAElFTkSuQmCC
"
x="566.51538"
y="497.10315"
width="162.99495"
height="162.99495"
id="image4674" />
<rect
width="160.00011"
height="160.00015"
x="361.84763"
y="498.76306"
id="rect4631"
style="fill:url(#linearGradient4633);fill-opacity:1;stroke:#000000;stroke-width:0.00549126;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;filter:url(#filter4543)" />
<text
x="382.57211"
y="537.15765"
id="text4660"
xml:space="preserve"
style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f64a00;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="382.57211"
y="537.15765"
id="tspan4662">KO</tspan></text>
<text
x="439.14066"
y="534.1272"
id="text4689"
xml:space="preserve"
style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f64a00;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="439.14066"
y="534.1272"
id="tspan4691">!= Expected</tspan></text>
<text
x="415.90714"
y="321.99515"
id="text4705"
xml:space="preserve"
style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f64a00;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="415.90714"
y="321.99515"
id="tspan4707">OK</tspan></text>
<text
x="479.18304"
y="428.90924"
transform="scale(0.77351912,1.2927929)"
id="text4851"
xml:space="preserve"
style="font-size:10.02463627px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f64a00;fill-opacity:1;stroke:none;font-family:Nimbus Mono L;-inkscape-font-specification:Nimbus Mono L"><tspan
x="479.18304"
y="428.90924"
id="tspan4853">in Inkscape 0.48.3.1 r9886 </tspan><tspan
x="479.18304"
y="441.44003"
id="tspan5969">it looks like the background </tspan></text>
</g>
</svg>
Thank you