Multiplying small numbers in shader causes strange behaviour

Here are two more versions working towards my goal, that I would like to share. Both without using the library.

With a transparent source, using more passes to have more control over the fade duration:

Using a gradient brush, which is pretty close to what I want: p5.js Web Editor

Thanks to @diroru for all of his help with this.