As a pilot of a small single engine plane, what do we do if ATC instructs us to expedite our climb/descent and doing so would be impossible or unsafe (i.e. we're already at the maximum safe rate of climb/descent)?
You report unable, and ATC will come up with a different plan.
To provide some context: If I ask you to expedite a vertical manoeuvre, it is probably because you are on crossing tracks with another aircraft, and I want you to pass them either above or below. This could be to meet certain level restrictions, or simply because I want to provide you with continuous climb/descend as a service. At your current rate, you will probably pass them, bot not quite with the 1000 ft vertical separation I need. Because you are so close to fitting into my plan, asking you to expedite is the easiest - it requires the least effort from me, and I won't have to vector you around, giving you a longer than needed flight path.
If you respond with unable, I have other options to choose from, depending on the situation. Typically I would either instruct you to level off or turn. If you are descending through FL160 and I wanted you to go below someone at FL130, I would simply instruct you to level off at FL140, and then descend you further when you are clear, which would only take a few minutes. I could use the phrase "Stop descend FL140, expect further descend in 3 minutes", in which case you could adjust your vertical rate so that you reach FL140 about 3 minutes in the future, resulting in a smooth descend. Alternatively, a turn of 20-30 degrees is often enough to establish lateral separation, which then allows you to descend unrestricted. 3 or 4 minutes later, when you have passed the other traffic, you will be turned back on your track.
The key thing here is communication. As an air traffic controller, when I instruct you to do something, don't think that I don't have backup plans. We are taught to always evaluate situations thoroughly, and come up with 2-3 different solutions to every problem or situation we face. I will start by presenting the easiest solution to you, but if that doesn't work for you, please don't be afraid of informing me - I will then simply choose another solution, and adjust my plan accordingly. And remember, air traffic control is a service. We are here to make your life easier - not the other way around. You can help us doing so by communicating clearly and in due time.
I'm going to play devils advocate here and give a different perspective.
Do not say "unable", just say "N12345 Expediting". Saying unable is telling the controller that you possibly cannot descend, but in reality you are already descending in an expeditious fashion.
If the controller comes back and says "N12345 can you increase your rate of descent", then reply "unable".
From an airmanship perspective lets say you are approaching VNE in your descent but not descending fast enough (conflicting traffic or wake turbulence for example). The first thing you should do is pull the power all the way back and point the nose down. Descending with power on is probably not your best descent rate. If you are unfamiliar with how to get your aircraft low quickly, go up with an instructor and ask to practice emergency descents. I find them quite fun actually, and it has other uses (like diving through a hole in the clouds to remain VFR).
I'll echo everyone else and say 'unable', but I'm not even sure that's really necessary. I believe the standard definition of expedite has to be limited to the possible. If you are already at maximum safe, then you are already expediting. It should be just as valid to say 'roger' and keep flying your plane safely. I don't think he's saying 'be unsafe'; I think he's saying do it without delay.