You already have a censor variable.  If CVD_OVERAL=1 then the disease was diagnosed on MIN_DIAG_DT, i.e. the participant was not censored prior to diagnosis.
 
If CVD_OVERAL=0 then the individual was censored, either at DEATH_DATE_DC or end-of-study (01jan2023).
 
If the proportional hazards procedure needs the censor variable to be 1 for censored, 0 otherwise, just subtract cvd_overal from 1.
 
As to time, you want the number of months from infant_dob to the minimum of three date variables: min_diag_dt, date of death, or 1/1/2023.
 
data want;
  set censor;
  censor=1-cvd_overal;
  death_date=input(death_date_dc,yymmdd10.);   
  format death_date yymmdd10.;
  time_in_months=intck('month',infant_dob,min(death_date,min_diag_dt,"01jan2023"d));
run;
The time_in_months variable is just the number of calendar-month-boundaries crossed (so a value of 1 could be just a single day, up to 31 days).  That is the default behavior of the INTCK function.  And of course, you should use 01jan2023 as end-of-study only if it was possible for there to be a diagnosis, or death, recorded for that date.  But if you really could not get a diagnosis later than 31dec2022, I suspect you should use that date as end-of-study.