Дмитрий: если говорить об этом как о подходе, то я не назвал бы его хорошим с точки зрения best practices. Событие должно идти от лица какой-либо сущности, информируя слушателей о ее действиях. При этом это сущность совершенно ничего не должна знать о слушателях события. В вашем же случае будет генерироваться событие четко направленное на одного конкретного слушателя, которое будет не сообщать о каком-либо действии, а провоцировать его. Хотя при этом конечно же все должно работать. Скорее тут форма заказа при смене шагов должна генерировать событие вроде changeStep, на которое должен подписаться слушатель для переинициализации плагина. Но на каждом ли шаге он вам требуется? Может юзать колбек все таки проще? )
Дмитрий: насколько я знаю, нет никаких эвентов на появление определенных элементов в DOM. Как правило такие задачи как раз таки решаются повторной инициализацией с помощью колбэков.
Дмитрий: вы же сами написали "навешивать плагин при активации нужного шага в виде колбэка".
При том, что конструкция $(document).ready(function() { $('.some-el').myPlugin() }) остается и никуда не девается.
Это же частный случай - тут можно провести отдельную инициализацию для данного элемента, не трогая при этом общую инициализацию плагина для всего сайта