There is no flaw in your proof. The requirement in the problem that the free variables of $\mathscr{B}$ are $y_1, \ldots, y_n$ is not necessary as the statement is true for any $y_1, \ldots, y_n$, which may include variables that do not occur free in $\mathscr{B}$ and need not includes all the free variables of $\mathscr{B}$: if $y$ is not free in $\mathscr{B}$, then $\mathscr{B}$ and $(\exists y)\mathscr{B}$ are logically equivalent and hence equisatisfiable; if $y$ and $z$ both occur free in $B$, then $(\exists y)(\exists z)\mathscr{B}$ and $(\exists z)\mathscr{B}$ are equisatisfiable. Your proof deals correctly with both of these cases.
To 1)
We we have two proof systems: the "basic" one, with $\text {MP}$ and $\text {Gen}$ as only rules of inference, with the corresponding derivability relation $\vdash$, and a new one, where we have three rules: the previous two plus $\text {Rule C}$, with $⊢_C$.
Prop.2.10 (page 82) says: if $Γ ⊢_C B$, then $Γ ⊢ B$. The proposition starts from a derivation that uses $\text {Rule C}$ and will produce a new derivation of the same end-formula that does not use it.
To replace $d$ everywhere means that, starting from the original $⊢_C$ derivation that uses the individual constant $d$, we have to replace in the sequence of formulas, starting from the first formula where $d$ occurs, every occurrence of $d$ with a new individual variable $z$.
We have to convince ourselves that this move is correct: $d$ is new, and thus no formulas in $\Gamma$ con use it.
Adding $d$, we can use it in instances of logical axioms; but the replacement of $d$ with $z$ will produce correct instances of logical axioms.
$\text {MP}$ is not affected; the only care must regards $\text {Gen}$, and here we have the proviso in the statement of $\text {Rule C}$.
In conclusion (assuming for simplicity that we have only one use of $\text {Rule C}$ in the derivation), starting from $\Gamma \vdash_C B$ we have: $\Gamma \vdash C(z) \to B$.
To 2)
Variable $z$ is new in the derivation; thus, it occurs nowhere in $\Gamma$ and we can "genaralize" it: $\Gamma \vdash \forall z (C(z) \to B)$.
Then we apply Coroll. 2.32 (d) to get: $\Gamma \vdash \exists z C(z) \to B$, because $z$ does not occur in $B$ [recall that $d$ does not occur in $B$].
But we can always "rename" a bound variable, provided that we do not violate the proviso regarding the free for condition [in a nutshell: $\forall x B(x) \vdash B(y) \vdash \forall z B(z)$].
Thus, we "restore" the original variable $y$ of $\exists y C(y)$ to get:
$\Gamma \vdash \exists y C(y) \to B$.
To 3)
Now the final step. The original proof $\Gamma \vdash_C B$ used $\text {Rule C}$ because somewhere in the derivation there were a formula $\exists y C(y)$ and $\text {Rule C}$ was used to introduce the new step $C(d)$.
But if $\exists y C(y)$ occurred in some step of the original derivation, either (i) $\exists y C(y) \in \Gamma$ or (ii) $\Gamma \vdash \exists y C(y)$.
In both cases:
$\Gamma \vdash \exists y C(y)$.
Thus, from:
n) $\Gamma \vdash \exists y C(y) \to B$,
and
n+1) $\Gamma \vdash \exists y C(y)$,
by $\text {MP}$ we have:
n+2) $\Gamma \vdash B$.
Best Answer
The basic definition is that of the satisfaction relation (page 60), that means:
The relation is expressed by the following symbol: $s \vDash_M \mathscr B$.
Consider a simple example in the language of arithmetic. Formula $(x_1=0)$ will be satisfied in $\mathbb N$ by the sequence $s$ such that $s(x_1)=0$.
Now, the example of page 62 consider the general case of a formula $\mathscr B(x_{i_1},\ldots,x_{i_k})$ with $k$ free variables (listed in increasing order; see the specifications of the language: page 57).
Again, consider as formula $\mathscr B (x_1,x_2)$ the simple example: $(x_1+x_2 \le 5)$.
This formula "specifies" a binary relation in $\mathbb N \times \mathbb N$, i.e. the set of all pairs of natural numbers $n,m$ such that their sum is less-or-equal to five. Thus, $(1,1)$ and $(3,2)$ will belong to that set of pairs, because in each case the two numbers of the pairs satisfy the formula.
According to the previous definition, we have that for sequence $s_1$ such that $s_1(x_1)=s_1(x_2)=1$ and $s_2$ such that $s_2(x_1)=3$ and $s_2(x_2)=2$ we have:
If we call $R$ the binary relation on $\mathbb N$ such that: $R = \{ (n,m) \mid n+m \le 5 \}$, we have that
Now,
The first one is a symbol in the meta-language denoting a formula with its free variables: $\mathscr B(x_{i_1},\ldots,x_{i_k})$.
The expression $\vDash_M \mathscr B[b_1,\ldots,b_k]$ instead, is an expression of the meta-language referrin to a property of the "interpreted formula": it is an "extension" of the original notion of satisfaction and means that the sequence $s$ that maps the variables $(x_{i_1},\ldots,x_{i_k})$ to a $k$-uple $(b_1,\ldots,b_k)$, i.e. where $s(x_{i_j})=b_j$, satisfies formula $\mathscr B$ in the interpretation $M$.