I found this discussion about images: Adding an invisible image watermark in C#?
And I've found some good open source libraries for watermarking raster images. One example: https://www.nuget.org/packages/Grizlah.Steganography.F5.StegSharp.Infrastructure
My interest is in watermarking SVG images. I know that different algorithms would be involved with vector.
If you have a library to manipulate svg, just add a similar group like that into the svg. Your could calculate the repition of the use elements by the width and height of the svg.
you can use svg dotnet nuget to do this.