Ah, okay. I was assuming the ruling for Staunch Defender instead of checking it, and I was wrong. Ah, now it works completely how it should. That's cool.
You said it yourself here so why wouldn't Shift work with Decoy Dragon. The requirement is met and as such, a player should be able to change the target of an attack to Decoy Dragon.
The difference between attacking Decoy Dragon and redirecting an attack to Decoy Dragon is the person that chooses the attack target.
The pivot factor is the word "declare". Your opponent, or your opponent's monster, "declares" an attack, i.e. selects an attack target. Shift just moves the attack target to something else (the word it uses is "switch". This is NOT the same as "declaring", or selecting the attack target.
Shift
Normal Trap Card
You can activate this card when your opponent designates 1 monster on your side of the field as a target of a Spell, Trap, or battle attack. Switch the target to another monster on your side of the field.
Decoy Dragon needs to be selected as an attack target, which is something Shift does not do. It's the same kind of difference as "discard 1 card" and "send 1 card in your hand to the Graveyard". All discarded cards are sent, but not all sent cards are discarded. The equivalent terms in attacks are "is attacked" and "is selected as an attack target".
Moreover, it needs to be selected as an attack target
by your opponent's monster. Shift is a Trap Card you control, which is entirely not "your opponent's monster". Even if Shift declares the new monster as the attack target, Decoy Dragon would have been declared an attack target
by your Trap Card.
This is how Command Knight can be attacked, even if her battle invisibility effect is working. The opponent cannot declare an attack on her, but there's nothing stopping YOU (with a card like Shift). Solar Flare Dragon cannot be attacked, period, so you can't even use Shift to make it be attacked. Shifting an attack to Command Knight
So since you're using Shift to declare an attack on Decoy Dragon (if it even does select Decoy Dragon as an attack target), Decoy Dragon needs to have been declared an attack target
by your opponent's monster. The thing doing the attack target declaring here is
your Trap Card. Therefore Decoy Dragon's effect doesn't activate.
Otherwise it would say something like, "When this face-up card is attacked...".
Finally, this argument. Yes, card texts aren't great, but this point I made above is still valid. There's a big enough difference between "is attacked" and "is declared as an attack target" for there to be a difference in text. If the card meant "is attacked", it would say it, even if the quality of card texts has gone downhill recently.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
On a related note, Decoy Dragon's effect looks like a mandatory Trigger, so if it was attacked (ignoring all other cards here), its effect would activate automatically. Then you could chain Shift. How would that work?
Shift to another attack target, Special Summon the high-Level Dragon and make that the attack target. Therefore Shift does nothing. Is that about right? That's the way I see it. Could Shift even be activated in response to your opponent attacking your Decoy Dragon?