I'm not observing the problem you describe with `canvas.scale[]`; Are you using native-decker, or web-decker? Can you provide a minimal example which reproduces the issue?
The 1-bit patterns are "logical colors" and are intended to remain the same when images are stretched/rotated/translated. If you have an image with these patterns on a Canvas widget and you wish to "flatten" them to patterns 0/1, you can use `canvas.invert[]`. Note that this is much more complicated if an image also contains animated patterns and/or color: see the implementation of the pdf module for a more complete solution: https://github.com/JohnEarnest/Decker/blob/main/examples/decks/pdf.deck#L186-L198