AS all the other fixtures are receiving the off message, I would go for a problem on the DALI side.
The thing is that the DALI protocol had not been designed to manage continuous stream of messages, you are only suppose to call back a scene, once in a while.
The control you are doing is spamming the DALI bus with many control messages, as when you move from 50 to 0, you will probably send 50 messages ( one for each value) in a really short amount of time.
Between 50 and 1, if one or more than one device do not receive the message it's not a big deal because it will be replaced by the next one, or the difference will not really be obvious, it's only when it should be off that you are able to spot any difference.
This can probably create some problems.
In this case , the best would be to add an extra action that will force all lights to go off once the value reach zero, using a scene you would record with all intensities set to 0.
This way it will also change the type of message sent, instead of intensity control it will be scene request.
Usually it solves the problem.
Good luck