Amazing what one can do with "Sprite Touching." There several capabilities to add like tracking solutions and not repeating, storing solutions and reading from a file. For a "Lego Like" middle school friendly coding activity this is making me pretty happy.
The word "stochastically" in the project notes led me to expect that the pieces would be placed entirely randomly, with a backtracking capability when a random placement later led to an impossibility for other pieces. Instead there is specific constraint knowledge in the code, namely that the green piece can't touch the center square.
I think the code would be more readable if you added a GO TO POSITION block that took a number 1-9 as input, to be used instead of those GO TO X:Y: blocks with mysterious numbers in the inputs. It could just be a nine-way IF/ELSE, nothing fancy.