There's no problem, the code you wrote is actually valid. Looks like older versions of Agda have trouble accepting it (development version from November certainly does), but it works fine in current development version.
It seems that unifications can't quite figure out what goes where, so if you are willing to help it a bit, you can get it to type check even in the older versions:
error' : {α γ : Level} {Z : Set γ}
-> (l : ℕ)
-> v∀⇒ (λ (Xs : Vec (Set α) l)
-> N-Ary-from-Vec Xs Z
-> N-Ary-from-Vec Xs (N-Ary-from-Vec Xs Z))
error' {_} {γ} l = vλ⇒ {l} (ok₃ {_} {γ})