And hope the M4 gets released within that time span.
I don't think there will be a substantial difference between the M3 and M4 other than the CPU. You may get a couple of extra cores, GPUs, in a M4 over the M3. Most people would not even notice the difference.
I would seriously consider the M2 as they are at really good prices right now. If your needs require more robust resources, then a M2 may not be a good choice. But personally, I would put the extra money M3/M4 costs and put that into more memory and storage on a M2 machine.
Unless you just want a M4. Then go for it.