Create destination directories if missing