Birmingham to Chinley is valid via Manchester and via Sheffield, so you could use a Birmingham-Chinley ticket outbound and then immediately start your return journey, going via Sheffield and breaking your journey there. An off-peak return would work for this. Return via Derby the next day. You'd need to stop at Chinley, but not get off, so go Birmingham-Stafford-Manchester (via Crewe or Stoke) before the Hope Valley stopper.
Essentially Birmingham-Sheffield isn't valid via Stockport, and Birmingham-Stockport isn't valid via Sheffield, which is why you need to set your destination as Chinley.
Someone else will probably have a better idea.
Birmingham-Manchester can be using Avanti or LNWR to Stafford or Crewe, and there is now an hourly Avanti Stafford-Manchester via Crewe, as well as Northern and TfW services from Stoke and/or Crewe.