As this is now implemented, does that mean that I can use MQTT transmission and Azure Event Grid MQTT broker to achieve a sparkplug B compliant approach for getting data to Azure?
Based on the Microsoft document you call out above, Event Grid now supports LWTs and retained messages. This support will now allow you to use a Primary Host ID in your Sparkplug MQTT configuration for both MQTT Engine and Transmission. We highly recommend the use of a Primary Host ID where possible. There are two potential issues you may run into with Event Grid as it is currently implemented:
Messages may be delivered out of order. You will need to set a reorder timeout in MQTT Engine configuration to attempt to reorder any messages delivered out of order.
The max message size for Event Grid is 1MB. You may run into issues where your message payloads are larger than this and will need to move tags around, use payload compression, split Sparkplug edge nodes / devices into multiple edge nodes / devices, etc. to reduce the message payload under the 1MB limit.