Тут ещё накладывается не всегда понятное взаимодействие Python с COM через pywin32.
Когда я с вводом разбирался, особой разницы между 
- doc.Utility.InitializeUserInput(128, "Line Circle") 
и
- doc.Utility.InitializeUserInput(128) 
для последующей обработки не заметил, хотя, может, и упустил что-то.
Моя фраза
 достаточно сформировать строку запроса особым образом
 относится только к тому,что запрос в командной строке будет выглядеть как запрос с опциями, далее я как раз и показываю, что необходимо предусмотреть в коде, чтобы опции запроса не только выглядели, как опции, но и работали соответствующим образом.
Код из официальной справки VBA действует абсолютно по той же схеме, обрабатывая ошибки при вводе значений опций:
- If Err Then 
-          If StrComp(Err.Description, "User input is a keyword", 1) = 0 Then 
просто я вместо текста ошибки "User input is a keyword" отслеживаю её по коду -2145320928
- errnumber = error.excepinfo[-1] 
-     if errnumber == -2145320928: