Use `With` instead of `Module`?

    ClearAll[a, b, c, d, pick, ex, co]

    ExpandPick[exp_] := With[{
       p = FirstPosition[exp, _pick]
       }, With[{
        x = First@Extract[exp, p],
        y = Last@Extract[exp, p]
        },
       ReplacePart[exp, p :> ex[Function[co, {co[x], co[y]}]]]]]