Joe,
Play[expressionForm /. hz -> 300, {seconds, 0, 2}]
Works. Note that if you replace Play with an arbitrary function, what you are trying will not work:
In[18]:= With[{hz = 300}, f[expressionForm, {seconds, 0, 2}]]
Out[18]= f[Cos[2 hz \[Pi] seconds], {seconds, 0, 2}]
While this does work:
In[21]:= With[{hz = 300}, f[Cos[2 Pi hz seconds], {seconds, 0, 2}]]
Out[21]= f[Cos[600 \[Pi] seconds], {seconds, 0, 2}]
The hz is not replaced because expressionForm does not have hz in it until it is evaluated (which is too late because the With tried to replace the value first)
You can always do this if you need it in a block/module/with type construct:
With[{withhz = 300},
Play[expressionForm /. hz -> withhz, {seconds, 0, 2}]]