As noted in #43 and related discussions, DCMTK can often return a zero exit code, even if the command has essentially failed, but puts the actual error code in the returned message. Now that we are extracting the error codes, we should pass them through to consumers as Exceptions.
As noted in this comment, this would represent a breaking change and would necessitate a minor (at least) version bump (along with proper documentation, etc.)