It changes diameter from one end to the other and squishes in the middle while bending.
The Curviloft plugin by Fredo6 probably would do the trick. Start with a few segments for the circles at the start and once the shape lofts nicely, increase the segmentcount.
@maxB has got it right! Couple of curves based on the profile, then a few ellipses (or is it elipsi?) based on the side views, and Curviloft does the rest!
This looks great. I have to load the extension.