Constant Distribution

A relatively simple trick can achieve this

ConstantDistribution[m_] = TransformedDistribution[m, {x \[Distributed] NormalDistribution[0, 1]}];

This behaves as desired for some key functions

{Mean, Variance, CDF[#, t] &, CharacteristicFunction[#, t] &}[ConstantDistribution[m]] // Through // InputForm
(* {m, 0, Piecewise[{{1, m - t <= 0}}, 0], E^(I*m*t)} *)

In[35]:= dist = ProbabilityDistribution[1, {x, a, a, 1}];

In[36]:= DistributionParameterQ[dist]

Out[36]= True

In[39]:= {Mean[dist], Variance[dist], CDF[dist, x], Expectation[s^2 + 1, s [Distributed] dist]} // InputForm

Out[39]//InputForm= {a, 0, Piecewise[{{1, a <= x}}, 0], 1 + a^2}