M600 not working as expected

I was trying to print a multi-color-print using a model made with Hueforge.
For this to work i need to change the filament various times at certain layers.
I read that the Command M600 was implemented some time ago and it should do the trick but i’m still out of luck getting it to work.
I used a g-code made with Prusaslicer and the software has the ability to implement a M600 command at specific layers.
Well, the test file ( just a small box with a few steps ) was printed but every instance of the M600 command at the end of a step was ignored.
Ok, so i looked at the g-code if the the command M600 was really there where it should be and it was.
So i sliced the file normally and implemented the M600 manually at various places in the code. Start of a layer, end of a layer, mid of a layer and even while it was printing a skirt.
The strange part is now that the only M600 which was recognized during printing was the one while printing the skirt.
The “Filament runout” script started as it should. But after continuing the print all other M600 instances were still ignored.
So the command does work but only before the first layer change which is strange and really not useful.
Does someone has an idea what the problem could be?
I use the last firmware and i tested the single extruder printhead and the dual extruder printhead unsuccessfully.