As the link says, this is a large number problem.
Try using a smaller scale:
I = im2double(imread('eight.tif')); %Matlab default image
scale = 1e9;
J = scale * imnoise(I/scale, 'poisson');
close all; imshow(J);
Input:
Output (1e9):
Output (1e10):