What are the ways to calculate the error rate of a deep Convolutional Neural Network, when the network produces different results using the same data?
Unless the entropy is collected from quantum, thermal, or other true entropy sources, it is considered pseudo-random at best.  This is why you can have a deterministic process that is not perfectly repeatable, exhibiting some variance.

List of Sources of Pseudo-random Behavior

The list of sources in the question is a good start.


Initialization
Ddropout used in regulation
Mini-batch shuffle


If stochastic gradient descent is used in the back-propagation, that could be an additional source, and there may be others.  It is difficult to say without scrutinizing the code.  CDN emerged along different paths from CNN and MLP so there is no unambiguously distinct classical version of it.

The Right Way

Since the variance is a known phenominon and the norm, there may be no particular question for which the academic community needs to be consulted for an answer.

The right ways to deal with the non-repeatability of validation statistics related to object recognition also has a norm: Follow standard reporting conventions that apply to all experimental results reporting.

The only solution that is mathematically rigorous and not changing the experiment to produce a desired result (which is not science) is the first of the two found in your investigation.


The suggestion to perform $N$ runs where $N \ge 30$ and report mean and variance (not standard deviation) is reasonable and responsible.
The suggestion to do this with $O$ ADDITIONAL models where $O \ge 3$ is another such practice.


Freezing is Necessarily Arbitrary

Some would consider freezing pseudo-random sources arbitrarily something other than, "making reproductive results," and consider it fabricating reproducable results.

Unfortunately, the temptation to please the reader or corporate stakeholder occasionally preempts truth in reporting.  The result is counterproductive.  In the worst case, it leads to broad acceptance of the wrong way.  Those in the academic community should know that, whether or not they unanimously do.  Be a leader and do what is backed by solid reasoning, whether that is the first suggestion found or a third choice that does not involve modifying the experiment arbitrarily to force results to appear more exact than the algorithm, methodology, or framework actually is.