Missed GP appointments cost the NHS up to £650million last year - but ministers have ruled out fining patients who fail to show up.