It seems that the subsystem flag is only passed in during the "Compile" phase.
ifeq ($(GMODE), Compile)
override LDFLAGS += -static-libgcc -Wl,-subsystem,windows
I tend to use "Run", and then just copy the binary, because then the user is playing the same binary that I test. (This was very helpful with Sad Little War-Bot, which had a bug that only appeared with -O2 or higher, so I just distributed the Debug build.)