Inserts the ditherPhoto call into drawBadge right after photoSize is worked
out, so it happens once at the final size and before either the portrait or
landscape draw site. Skipped on the measuring pass. Idempotent, backs up
first, and matches the size line by pattern so changing the photo
multipliers later won't break it.
Replaces the brother_ql subprocess call in printBadge with printPng, and
swaps available() for a real reachability check. Uses brace matching rather
than literal body matching so it survives formatting differences, refuses to
run if the anchors are missing, is idempotent, and writes a .bak first.
The badge layout is untouched.